在Button的點(diǎn)擊事件前進(jìn)行頁面JS判斷
我們?cè)谶M(jìn)行button點(diǎn)擊事件前,會(huì)有一些頁面判斷,例如判斷文本框不能為空,是否為手機(jī)號(hào)碼等操作。但是,點(diǎn)擊一次按鈕它會(huì)刷新一次按鈕,在給按鈕寫JS時(shí),并不會(huì)執(zhí)行JS函數(shù),本文就輸入框不能為空為例介紹一種。
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>驗(yàn)證填入數(shù)據(jù)測(cè)試</title>
<script src="../Js/jquery-1.8.0.min.js"></script>
<script>
function validform()//返回結(jié)果,以便于瀏覽器判斷
{
//alert(1);
if (!validtext("#TextBox1", "名字"))
{ return false };
if (!validtext("#TextBox2", "賬號(hào)")) { return false };
if (!validtext("#TextBox3", "密碼")) { return false };
return true;
}
function validtext(tid,tmsg)//驗(yàn)證輸入框內(nèi)容是否為空
{
//alert(2);
var txtPhone = $("#txtphone").val();
var ss = $(tid).val();
//alert(ss + "111");
//var derk = document.getElementById(tid);
//alert(derk.val() + "111");
if (ss == "" || ss == undefined)
{
alert("請(qǐng)?zhí)顚? + tmsg);
return false;
}
return true;
}
</script>
</head>
<body>
<form id="form1" runat="server" action="validText.aspx" onsubmit="return validform();" method="post" >//form提交判斷操作(重點(diǎn)所在)
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click"/>
</form>
</body>
</html>
這樣,程序會(huì)先執(zhí)行頁面的判斷操作,而后才會(huì)進(jìn)行C#后臺(tái)程序的點(diǎn)擊事件操作。
像這樣的驗(yàn)證,可能有一下驗(yàn)證的JS驗(yàn)證框架,但是萬事都會(huì)有一個(gè)萬一,比如當(dāng)瀏覽器不兼容你的JS驗(yàn)證時(shí),這些土辦法有可能幫助到你。本人才學(xué)疏淺,若用不正確的地方加以指正,有更高明的方法,歡迎討論。