Js文本框的值决定了按钮onclick事件在asp.net中发生
本文关键字:asp net 事件 onclick 文本 按钮 决定了 Js | 更新日期: 2023-09-27 18:13:22
现在我遇到了一个问题。我对一个文本框做了一些验证,我想要一种效果,只有当用户输入正确的信息时,按钮才能执行onclick事件。如果用户没有输入正确,按钮不应该做onclick事件(没有提交,只使用js和按钮)。
<input type="text" id="eventsPostcodeTextbox" runat="server" onkeyup="showHint(this.value)" />
<input type="button" id="eventsButton" runat="server" value="FIND" onclick="search()" />
function showHint(str) {
reg = /^(0[289][0-9]{2})|([1345689][0-9]{3})|(2[0-8][0-9]{2})|(290[0-9])|(291[0-4])|(7[0-4][0-9]{2})|(7[8-9][0-9]{2})$/;
if (str.length == 0) {
document.getElementById("txtHint").innerHTML = "";
return false;
} else if (str.length == 4 && reg.test(str)) {
document.getElementById("txtHint").innerHTML = "";
return;
} else {
document.getElementById("txtHint").innerHTML = "Your input is not correct.";
return false;
}
}
在search()中,我使用ajax绘制数据表。现在无论输入什么,它都会得到文本框的数据,如果数据不正确,它会给出错误。
你可以试试这个
var showHintResult;
$('#eventsPostcodeTextbox').keyup(function (){
showHintResult = showHint($(this).val())
});
$('#eventsButton').on('click', function(e){
if (!showHintResult) {
e.preventDefault();
}
search();
});
e.preventDefault()
防止按钮"click"的默认行为。