<script language="JavaScript">
<!--
function chkInp(){
var regCh = null;
var regAll = null;
switch(event.srcElement.jinzhi){
case "bin": regCh = /[0-1]/; regAll = /^[0-1]*$/; break;
case "oct": regCh = /[0-7]/; regAll = /^[0-7]*$/; break;
case "hex": regCh = /[0-9a-fA-F]/; regAll = /^[0-9a-fA-F]*$/; break;
default: regCh = /[0-9]/; regAll = /^[0-9]*$/; break;
}
switch(event.type){
case "keypress": event.returnValue = regCh.test(String.fromCharCode(event.keyCode)); break;
case "paste" : event.returnValue = regAll.test(window.clipboardData.getData("text")); break;
case "drop" : event.returnValue = regAll.test(event.dataTransfer.getData("text")); break;
case "blur" : if(regAll.test(event.srcElement.vlaue)) alert("输入非法"); return;
default: break;
}
}
//-->
</script>
<input type="text" jinzhi="" onkeypress="chkInp()" onpaste="chkInp()" ondrop="chkInp()" onblur="chkInp()"><br>
0123456789<br>
abcdefghijklmnopqrstuvwxyz<br>
ABCDEFGHIJKLMNOPQRSTUVWXYZ<BR>
 ~!@#$%^&*()_+}{":?><|,./\';[]=-<br>

解决方案 »

  1.   

    谢谢 zhaoxiaoyang(梅雪香@深圳)
    我现在最想知道的是我的代码是那里出了问题
      

  2.   

    document.getElementById('td5_2').value
    你有找到id为 td5_2 的那个td吗? 我是没找到
    页面设计要注意页面内容与代码逻辑的分离,都写到一起很难看
      

  3.   

    我想实现判断:td5_2为不空 input_62为整数 input_62,td7_2的积为实数 三个条件现时满足的情况
    <HTML>
    <HEAD>
    <title></title>
    <script language="JavaScript">
    //去掉空格
    function Trim(str){
     if(str.charAt(0) == " "){
      str = str.slice(1);
      str = Trim(str); 
     }
     return str;
    }
    //判断是否是空
    function isEmpty(pObj,errMsg){
     var obj = eval(pObj);
     if( obj == null || Trim(obj.value) == ""){
      if (errMsg == null || errMsg =="")
       alert("输入为空!");
      else
       alert(errMsg); 
      obj.focus(); 
      return false;
     }
     return true;
    }
    //判断是否是数字
    function isNumber(pObj,errMsg){
     var obj = eval(pObj);
     strRef = "1234567890.";
     if(!isEmpty(pObj,errMsg))
     {
     alert(errMsg);
     return false;
     }
     for (i=0;i<obj.value.length;i++) {
      tempChar= obj.value.substring(i,i+1);
      if (strRef.indexOf(tempChar,0)==-1) {
       if (errMsg == null || errMsg =="")
        alert("数据不符合要求,请检查");
       else
        alert(errMsg);
       if(obj.type=="text") 
        obj.focus(); 
       return false; 
      }
     }
     return true;
    }function height()
    {
      window.parent.document.all.div1.style.height=document.body.scrollHeight;
    }function get_num(input,td,input2)
    {aValue = parseFloat(document.getElementById(input).value,10);
    bValue = parseFloat(document.getElementById(td).innerText,10);
    cValue = aValue * bValue;
    document.getElementById(input2).value = cValue;
    if(cValue == "NaN")
    {
    alert("数据不符合要求,请检查");
    return false;
    }
    else
    {
    return true;
    }
    }</script></HEAD>
    <body  MS_POSITIONING="FlowLayout">
    <form name="Form1" method="post" action="OA_Missive_Add.aspx" language="javascript" onsubmit="if (!ValidatorOnSubmit()) return false;" id="Form1">
    <table width="700" cellpadding="4" cellspacing="1" bgcolor="#333333">
    <tr id="tr2" valign="top" bgcolor="#ffffff">
    <td width="220" id="td1_2"><p>在第一框内输入数字<br/>
      (不可以取消输入,否则出错)<br/>
    </p>    </td>
    <td id="td5_2" width="59" align="Center">1</td>
    <td width="97" align="Center"><input name="input_62" id="input_62" type="text" style="input:font-size: 9pt;border: 1px solid #666666;;" size="6" onChange="javascript:return (isEmpty(document.getElementById('td5_2').value,'请插入数据!!!') && isNegative(this,'输入不合法,请输入数字!!!') && get_num('input_62','td7_2','input_82'));" /></td>
    <td id="td7_2" width="59" align="Center">1</td>
    <td width="73" align="Center"><input name="input_82" id="input_82" type="text" style="input:font-size: 9pt;border: 1px solid #666666;;" size="5" /></td>
    <td width="203"><input name="input_92" id="input_92" type="text" style="input:font-size: 9pt;border: 1px solid #666666;;" size="20" /></td>
    </tr></table>
    </form></body>
    </HTML>