<input type=text onkeydown="if(!((event.keyCode>=48 && event.keyCode<=57) || (event.keyCode>=96 && event.keyCode<=105) || (event.keyCode=8)  || (event.keyCode=16)))event.returnValue=false;">

解决方案 »

  1.   

    <html><head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
    <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
    <meta name="ProgId" content="FrontPage.Editor.Document">
    <title>JK的普通输入验证示例</title>
    <style>
    td{font-size:12px}
    </style>
    <script language="Javascript" src="commonForManage.js"></script>
    </head>
    <body style="font-size:12px">
    <table align=center style="border: 1 solid #000000" style="font-size:12px;width:90%">
    <form name=frm onsubmit="return checkNecessaryInput(this);" method=post >
    <tr><td>数值1<font color=red>*</font><input name=a alt="数值1" onblur="checkDecimalInput(this)" ></td>
    <td>数值2:<input name=b onblur="checkDecimalInput(this,-1,1)" >(大于-1,小于1)</td>
    <td>数值3:<input name=b onblur="checkDecimalInput(this,-0.0000001,1.0000001)" >(大于或等于0,小于蔌等于1)</td>
    </tr>
    <tr><td>整数1<font color=red>*</font><input name=a alt="整数1" onblur="checkIntInput(this)" ></td>
    <td>整数2:<input name=b onblur="checkIntInput(this,-100,100)" >(大于-100,小于100)</td>
    <td>整数3:<font size=-3><input name=b onblur="checkIntInput(this,-0.0000001,100.0000001)" ></font>(大于或等于0,小于或等于0)</td>
    </tr>
    <tr><td>日期1<font color=red>*</font><input name=a alt="日期1" onblur="checkDateInput(this)" ondblclick="getDateFromDialog(this);"></td>
    <td>日期2:<input name=b onblur="checkDateInput(this)" ondblclick="getDateFromDialog(this);"></td>
    <td>注:双击输入框可以弹出日历</td>
    </tr>
    <tr><td>编号1<font color=red>*</font><input name=a alt="编号1" onblur="checkNoInput(this)" ></td>
    <td>编号2:<input name=b onblur="checkNoInput(this)" ></td>
    <td>注:编号里只能有<font color=blue>数字</font>、<font color=blue>字母</font>、<font color=blue>-</font>、<font color=blue>_</font>、<font color=blue>.</font></td>
    </tr>
    <tr><td>输入1<font color=red>*</font><input name=a alt="输入1" ></td>
    <td>输入2:<input name=b value=2 ></td>
    <td>不限制输入内容</td>
    </tr>
    <tr><td>选择1<font color=red>*</font><select name=c alt="选择1">
    <option value="">请选择</option>
    <option value="1">一</option>
    <option value="2">二</option>
    <option value="3">三</option>
    <option value="4">四</option>
    <option value="5">五</option>
    </select></td>
    <td>选择2:<select name=d >
    <option value="">请选择</option>
    <option value="1">一</option>
    <option value="2">二</option>
    <option value="3">三</option>
    <option value="4">四</option>
    <option value="5">五</option>
    </select></td>
    <td>&nbsp;</td>
    </tr>
    <tr><td>复选<input type=checkbox name=e value=5 ><input type=checkbox name=e value=2 ><input type=checkbox name=e value=3 ></td>
    <td>单选<input type="radio" value="1" checked name="f"><input type="radio" value="2" checked name="f"><input type="radio" value="3" checked name="f"></td>
    <td>&nbsp;</td>
    </tr>
    <tr><td colspan=3>
    <input type=button value=确定 onclick="javascript:if (checkNecessaryInput(frm)) frm.submit();">
    <input type=button value=清空 onclick="javascript:resetProcess(frm);">
    </td></tr>
    <tr><td colspan=3>
    <pre>
    说明:
    1.由于当输入错误时,blur事件检查到有错误时使用了focus方法,故所有的输入框的预
        设值(包括所有的非手工输入的值)必须正确,否则有可能发生抢焦点的死循环
    2.必须输入的验证使用了遍历,请反对遍历的朋友包涵
    </pre>
    </td></tr>
      <tr>
        <td width="100%" align="right" colspan=3><a href="http://fason.nease.net">【阿信的小天地】</a></td>
      </tr></form>
    </table>
    </body></html>
      

  2.   

    wanghr100(灰豆宝宝.net)  is right