Tôi đã tạo biểu mẫu web đơn giản, chứa một hộp văn bản và một nút. Tôi đã nắm bắt sự kiện onblur của hộp văn bản.sự kiện nhấp nút bị mất do hộp cảnh báo trong hộp văn bản onblur sự kiện
<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>
Khi tôi nhập một số giá trị vào hộp văn bản và nhấp vào nút, sự kiện onblur của hộp văn bản xảy ra nhưng nút onclick của nút đó không. Và, khi tôi loại bỏ các hộp cảnh báo từ chức năng js thì nó hoạt động tốt. Một số cách bấm nút sự kiện là sự kiện bị mất. Tôi nghĩ đó là do hộp cảnh báo. Bất kỳ ý tưởng tại sao điều này như vậy?
có bất kỳ workarround nào cho điều này không? –
@Vinod T.Patil: không thực sự. Giải pháp "workaround" duy nhất sẽ đợi cho đến khi nhấp chuột hoàn tất hoặc tránh sử dụng 'alert'. –
một cách là, nhấp nút gọi một cách rõ ràng, như document.getElementById ("Button1"). Nhấp() ;, sau khi cảnh báo. Nó hoạt động. Nhưng, nó là ok cho ứng dụng mẫu như vậy, trong thực tế có thể có các hộp văn bản khác trên biểu mẫu và trong trường hợp đó tôi sẽ không muốn nhấn nút để được kích hoạt ngay lập tức sau khi tôi rời khỏi hộp văn bản đầu tiên. –