介绍:在有些时候需要判断用户填写的输入框类型是否正确,就需要做出脚本的判断。
演示:
[Ctrl+A全选 提示:你可先修改部分代码,再按运行]
下面教你如何应用此特效:
--------------------------------------------------------------------------------------
需要在<body
这里>加入的代码:
--------------------------------------------------------------------------------------
以下代码加到<head>…</head>中
以下代码加到<body>…</body>中
<script language="JavaScript">
function fob(n, d){var p,i,x;if(!d) d=document;if((p=n.indexOf("?"))>0&&parent.frames.length) {d=parent.frames[n.substring(p+1)].document;n=n.substring(0,p);}if(!(x=d[n])&&d.all) x=d.all[n];for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=fob(n,d.layers[i].document); return x;} function vdf() {var i,p,q,nm,t,num,min,max,e='',a=vdf.arguments;for (i=0; i<(a.length-2); i+=3) {t=a[i+2];val=fob(a[i]);val1=val.value;if (val) {nm=a[i+1];if ((val=val.value)!="") {if (t.indexOf('pwd') != -1) {val2=fob(t.substring(t.indexOf(':')+1));if (val1!=val2.value) e+='两次密码输入不相同.\n'; else if (val2.value.length<3) e+='密码长度应大于等于3个字符.\n';} if (t.indexOf('len') != -1) {p=t.indexOf(':');l=t.substring(p+1);if (val1.length<l) e+=nm+'-长度应大于等于'+l+'个字符.\n';} if (t.indexOf('sel') != -1) {p=t.indexOf(':');l=t.substring(p+1);if (val1 == l) e+='请输入-'+nm+'\n';} if (t.indexOf('mail')!=-1) { p=val.indexOf('@'); if (p<1 || p==(val.length-1)) e+=nm+'-邮件地址无效.\n';} if (t.indexOf('num')!=-1) { num = parseFloat(val); if (val!=''+num) e+=nm+'-必须是数字.\n';} if (t.indexOf('inRange') != -1) { num = parseFloat(val);p=t.indexOf(':');min=t.substring(8,p);max=t.substring(p+1);if (num<min || max<num || val!=''+num) e+=nm+'-信息不合理 应在'+min+'与'+max+'之间.\n'; }} else {if (t.charAt(0) == 'R') e += nm+' 是必须的.\n'; }}} if (e) alert('下列信息输入错误:\n'+e);document.vdfValue=(e=='');return(e=='');}function pse(){a=pse.arguments;o='';for(i=2;i<a.length;i+=2) o+=("<option value='"+a[i]+"'>"+a[i+1]+"</option>");o=a[0]+" <select name="+a[1]+">"+o+"</select>";document.write(o);}function psr(b){document.write("<form method=get action=http://zzl/spcx/list.php3 name=cx>");pse('商品品牌','pp','PALL','全部','hx','海信','ch','长虹','kj','康佳');document.write(((b)?"<br>":" "));pse('商品类别','lb','LALL','全部','A0','电视机','B0','冰箱冰柜','C0','洗衣机','D0','空调','E0','电扇','F0','微波炉','G0','热水器','H0','洗碗机','I0','影碟机','J0','音响','K0','摄 录影机','L0','随身听');document.write(((b)?"<br>":" "));pse('价格档次','jg','JALL','不限','1','500以下','2','500-1000','3','1000-1500','4','1500-2000','5','2000-2500','6','2500-3000','7','3000-3500','8','3500-4000','9','4000-4500','a','4500-5000','b','5000-6000','c','6000以上');document.write(((b)?"<br>":" ")+"<input type=submit name=cx value=查询></form>");}
</script>
<form method="POST" action="success.asp" onsubmit="return vdf('character1','字符型1','R','character2','字符型2','len:4','character3','字符型3','Rlen:4','number1','数字型1','Rnum','number2','数字型2','num & Rlen:4','number3','数字型3','Rnum & Rlen:4','email1','Email型1','Rmail','email2','Email型2','mail');">
<table width="445" border="1" cellspacing="2" cellpadding="0" align="center" bordercolor="F2F2F2">
<tr>
<td bordercolor="7285CF" width="63" align="center" bgcolor="F2F2F2">字符型1</td>
<td width="8"> </td>
<td width="132">
<input name="character1" size="20" maxlength="40" class="editbox1">
</td>
<td width="222">* 不为空</td>
</tr>
<tr>
<td bordercolor="7285CF" width="63" height="22" align="center" bgcolor="F2F2F2">字符型2</td>
<td width="8"> </td>
<td width="132">
<input name="character2" size="20" maxlength="40" class="editbox1">
</td>
<td width="222">* 可为空/填写则判断四个字符以上</td>
</tr>
<tr>
<td bordercolor="7285CF" width="63" height="22" align="center" bgcolor="F2F2F2">字符型3</td>
<td width="8"> </td>
<td width="132">
<input name="character3" size="20" maxlength="40" class="editbox1">
</td>
<td width="222">* 不为空且大于四个字符</td>
</tr>
<tr>
<td bordercolor="7285CF" width="63" height="22" align="center" bgcolor="F2F2F2">数字型1</td>
<td width="8"> </td>
<td width="132">
<input name="number1" size="20" maxlength="30" class="editbox1">
</td>
<td width="222">* 不为空</td>
</tr>
<tr>
<td bordercolor="7285CF" width="63" height="22" align="center" bgcolor="F2F2F2">数字型2</td>
<td width="8"> </td>
<td width="132">
<input name="number2" size="20" maxlength="30" class="editbox1">
</td>
<td width="222">* 可为空/填写则判断四个数字以上</td>
</tr>
<tr>
<td bordercolor="7285CF" width="63" height="22" align="center" bgcolor="F2F2F2">数字型3</td>
<td width="8"> </td>
<td width="132">
<input name="number3" size="20" maxlength="30" class="editbox1">
</td>
<td width="222">* 不为空且大于四个数字</td>
</tr>
<tr>
<td bordercolor="7285CF" width="63" height="22" align="center" bgcolor="F2F2F2">Email型1</td>
<td width="8"> </td>
<td width="132">
<input name="email1" size="20" maxlength="30" class="editbox1">
</td>
<td width="222">* 不为空</td>
</tr>
<tr>
<td bordercolor="7285CF" width="63" height="22" align="center" bgcolor="F2F2F2">Email型2</td>
<td width="8"> </td>
<td width="132">
<input name="email2" size="20" maxlength="30" class="editbox1">
</td>
<td width="222">* 可为空/填写则判断是否为Email型</td>
</tr>
<tr>
<td width="63" height="18" align="center" bgcolor="F2F2F2"> </td>
<td width="8" height="18"> </td>
<td width="132" height="18">
<input class=bottom name=B12 type=submit value="提交">
<input class=bottom name=B22 type=reset value="重填">
</td>
<td width="222" height="18"> </td>
</tr>
</table>
</form>