Laden...

Button muss zweimal angeklickt werden

Erstellt von Locust vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.873 Views
L
Locust Themenstarter:in
21 Beiträge seit 2006
vor 16 Jahren
Button muss zweimal angeklickt werden

In einer Webanwendung soll über einen Buttonclick eine vorher festgelegte URL aufgerufen werden:


		private void btnD2_Click(object sender, System.EventArgs e)
		{
			btnD2.Attributes.Add("onclick", "window.open('" + url+ "').location.href='" + url+ "';");
		}

das funktioniert auch - allerdings erst, nachdem ich den Button ein zweites Mal angeklickt habe.
Leider habe ich nicht die geringste Ahnung wieso. Weiß jemand weiter?

V
327 Beiträge seit 2005
vor 16 Jahren

ich hab zwar keine ahnung von webanwendungen aber kann es sein, dass du mit deinem Klick erst das Klickereignis einstellst?
und dann beim 2. Klick funktioniert es dann...
ist nur so eine vermutung wegen "onClick"...

MfG veasel

MFG Veasel

P
554 Beiträge seit 2005
vor 16 Jahren

Ja, is so wie veasel gesagt hat.

Versuchs mal folgendermaßen im btnD2_Click:


string script = "<script type=\"text/JavaScript\">window.open('" + url+ "').location.href='" + url+ "';</script>";
ClientScript.RegisterClientScriptBlock(this.GetType(), "wndOpen", script); 

Achtung! - Hinter dir ist ein dreiköpfiger Affe!

V
327 Beiträge seit 2005
vor 16 Jahren

wow...
heißt das ich kann urls nur per script aufrufen?
geht das nicht auch irgenwie anders?
ich muss mich demnächtst auch mit ASP.Net beschäftigen und wenn ich sowas sehe hab ich da ja jetzt schon keine lust mehr...

MFG Veasel

P
554 Beiträge seit 2005
vor 16 Jahren

Nein, aber PopUps.

Normaler URL Aufruf geht mit:

Response.Redirect("http://www.google.de");

Achtung! - Hinter dir ist ein dreiköpfiger Affe!

V
327 Beiträge seit 2005
vor 16 Jahren

okay, das sieht einfacher aus!! 😮)

das heißt aber trotzdem, dass ich wenn ich ASP.Net progge, muss ich auch ziemlich gut JavaScript können?

edit:
nochmal zum Code...
aber man könnte doch den Code, so wie er oben ist, woanders ausführen lassen. zum beispiel wenn die Site geladen wird oder im ctor oder so...wenn es sowieso eine statische sache sein soll...

MFG Veasel

L
Locust Themenstarter:in
21 Beiträge seit 2006
vor 16 Jahren

habs jetzt auch über
Response.Write("<script language=javascript>window.open('" + URL + "','_blank')</script>");
gelöst

P
554 Beiträge seit 2005
vor 16 Jahren

Ja, eigentlich schon. Kommt halt immer drauf an, was du machen willst. Manche Dinge passieren einfach nur clientseitig(= Javascript) und ASP läuft ja nur auf dem Webserver.

Es gibt keinen Konstruktor für ASP-Seiten, nur Page_Load, das bei jedem Laden ausgeführt wird.

Ich weiß ja nicht, was Locust machen will... aber wenn er dynamische Urls per PopUp aufrufen will, dann wäre das eine Lösung.

Achtung! - Hinter dir ist ein dreiköpfiger Affe!

V
327 Beiträge seit 2005
vor 16 Jahren

oh man ich seh schon ich muss ich JavaScript lernen... juhu!
na dann euch noch einen sonnigen Tag!

MfG Veasel

MFG Veasel