问题描述
现在页面上有一个TextBox一个select(HTML空件)和一个Button,Button是根据TextBox的输入和Select的选择做查询当Select选择科目编号的时候TextBox只能输入数字否则提示,不执行代码.当Select选择科目名称的时候TextBox只能输入中文否则提示,不执行代码.要如何验证<selectid="selectSort"runat="server"><optionselected="selected"value="txtSort">科目编号</option><optionvalue="txtSName">科目名称</option></select>functionchecktxtb(){vara=/^[0-9]*[1-9][0-9]*$/;//判断数字varb=/^[u4e00-u9fa5]+$/;//判断汉字if(document.getElementById("txtAddSubject").value==""){alert("查询条件不能为空!");returnfalse;}else{returntrue;}if(!document.getElementById("txtSort").value.match(a)){alert("科目编号是一个数字哦!");returnfalse;}if(!document.getElementById("txtSName").value.match(b)){alert("科目名称是汉字");returnfalse;}OnClientClick="returnchecktxtb();"这样不行要如何验证????
解决方案
解决方案二:
<scriptlanguage=javascript>functiongeth(){varcon1=/^[0-9]*[1-9][0-9]*$/;varcon2=/^[u4e00-u9fa5]+$/;varsel=document.getElementById("Select1");varbut=document.getElementById("TextBox1").value;if(sel.value==0){if(!con1.test(but)){window.alert("只能是数字");returnfalse;}}if(sel.value==1){if(!con2.test(but)){window.alert("只能是汉字");returnfalse;}}returntrue;}</script></head><body><formid="form1"runat="server"onsubmit="returngeth();">=======================================================已经测试过没问题的
解决方案三:
谢谢楼上的!