js是这段:function checkIDCard (str) 

var isIDCard1 = new Object();
var isIDCard2 = new Object();//身份证正则表达式(15位) 
isIDCard1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/; //身份证正则表达式(18位) isIDCard2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[A-Z])$/; //验证身份证,如果正确,提交到reg.asp页面
if (isIDCard1.test(str)||isIDCard2.test(str))
{    
document.forms["form1"].action = "./reg.asp";
document.forms[0].submit();
return true;
}
alert("请重新输入正确的身份证码!");
return false;}  引用时是:<script src="Js/sfz.js" type="text/javascript"></script>
<td align="center" class="style35">身份证号:</td>
<td colspan="3"><input id="TxtId" runat="server" size="18" onsubmit="return checkIDCard(this.TxtId.value)" />
</td>怎么最后就报错了呢:高手们教教我——谢谢

解决方案 »

  1.   

    画蛇添足
    onsubmit="return checkIDCard(this.value)"
      

  2.   

    http://topic.csdn.net/u/20090512/14/c4eaef9d-2998-4054-846f-a4115ee5da02.html
      

  3.   

    现在不用那个验证了,只想TexBox只能输入数字,
      

  4.   

        <asp:TextBox ID="TextBox1" runat="server" onblur="valiNumber(this)"></asp:TextBox>
        <script type="text/javascript">
            function valiNumber(obj){
                var reg=/^\d+$/;
                if(!reg.test(obj.value))
                    alert("输入错误!")
            }
        </script>