【发布时间】:2022-02-03 05:41:03
【问题描述】:
我有这个js函数:
function neki() {
if ( $("input[id*='txtIDCriteria']").val() == ''
&& $("input[id*='chkID']").is(':checked')
) {
alert('Value is required.');
}
}
还有这个asp代码:
<table border="0" cellpadding="1" cellspacing="0"
style="width: 100%" class="DataTable" id="check_all"
>
<tr>
<td>
<asp:CheckBox CssClass="formdata100" ID="chkID" runat="server">
</asp:CheckBox>
</td>
<td>
<asp:Label CssClass="formdata100" ID="lblID" runat="server">
Maintenance ID
</asp:Label>
</td>
<td>
<asp:TextBox CssClass="formdata100" ID="txtIDCriteria"
runat="server" MaxLength="6"
onkeyup="return validate_int(event,this);"
>
</asp:TextBox>
</td>
</tr>
<tr>
<td colspan="5">
<asp:Button Text="search" ID="search" OnClick="search_Click"
runat="server" style="float:right" onClientClick="neki()"
/>
</td>
</tr>
我希望这个OnClick="search_Click"在这个函数neki()被执行时停止,即当它为真时。
如何通过 JavaScript 解决?
【问题讨论】:
-
Javascript 是单线程的。你不能只用信号通知一个函数停止。
-
能不能用别的方法解决?
-
是的,您可以让按钮代码运行,也可以不运行。如果 on client 事件返回 true,则服务器端按钮代码将运行。如果客户端单击 JS 例程返回 false,则服务器端按钮单击和后面的代码不会运行。请参阅下面的答案。
标签: javascript html asp.net