var str='........';
var patt=/[^\d\_]+/g;
if(str.match(patt))
{
  alert('含有非法字符');
}
else alert('通过');

解决方案 »

  1.   

    <body>   
      <script   language="JavaScript">   
      function   check(str)   
      {   
      var   pattern   =   /^[a-z\d\u4E00-\u9FA5]+$/i;   
      if   (pattern.test(str))   
      alert("输入正确:只包含中文、字母、数字");   
      else   
      alert("错误:含有符号")   
      }   
      </script>   
      <input   type="text"   id="txt"   value="">   
      <input   type="button"   onclick="check(txt.value)"   value="Check">   
      </body>
    把正则改下就可以了
      

  2.   

    <body>   
      <script   language="JavaScript">   
      function   check(str)   
      {   
      var   pattern =/^[\d\_]+$/g;   
      if   (pattern.test(str))   
      alert("输入正确:只包含数字、下划线");   
      else   
      alert("错误")   
      }   
      </script>   
      <input   type="text"   id="txt"   value="">   
      <input   type="button"   onclick="check(txt.value)" value="Check">   
      </body>
    问题解决,谢谢二位了
      

  3.   

    建议找点正则表达式的资料看看,这样类似的问题就能解决了,下面是个小例子:<script>
    function checkinput(obj){
    if((/[^\d|_]/.test(obj.value))){
      alert('只能输入数字和下划线,请重输!');
      obj.focus();
      return false;
      }
    }
    </script>
    <input type="text" value="" name="text_input">
    <input type="button" onclick="checkinput(text_input);">