Ich habe ein einfaches Webformular erstellt, das ein Textfeld und eine Schaltfläche enthält. Ich habe das onblur-Ereignis des Textfelds erfasst.Button Klick Ereignis verloren wegen der Alarmbox im Textfeld onblur Ereignis
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<script language="javascript" type="text/javascript">
function onTextBoxBlur()
{
alert("On blur");
return true;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:TextBox ID="TextBox1" runat="server" onblur="onTextBoxBlur();"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" />
</form>
</body>
</html>
Wenn ich einen Wert in Textfeld eingeben und auf die Schaltfläche klicken, dann das onblur Ereignis von Textbox auftritt, aber die Onclick der Taste nicht. Und wenn ich die Alarmbox von der js Funktion entferne, funktioniert es gut. Einiges, wie das Knopfklicken Ereignis ist, ist verloren. Ich denke, es liegt an der Alarmbox. Irgendeine Idee warum ist das so?
Gibt es dafür ein Workarround? –
@Vinod T.Patil: nicht wirklich. Der einzige "Workaround" wäre, zu warten, bis der Klick abgeschlossen ist oder die Verwendung von "alert" zu vermeiden. –
eine Möglichkeit ist, klicken Sie explizit auf Schaltfläche klicken, wie document.getElementById ("Button1"). Klicken Sie auf(); nach Alert. Es klappt. Aber es ist in Ordnung für eine solche Beispielanwendung, in der Praxis kann es andere Textfelder auf dem Formular geben und in diesem Fall würde ich nicht wollen, dass Button-Klick sofort ausgelöst wird, nachdem ich das erste Textfeld verlassen habe. –