在一个html 的 input域中,只接受A-Z,a-z, 0-9, _ 以及中文输入,
这个正则表达式应该怎么写?请教,多谢!!

解决方案 »

  1.   


    <input id="txt1" type="text" value="" onchange="check()" />
    <input type="button" />
    <script>
    function check() {
    var patt=/[^\w_\u4e00-\u9fa5]+/g;

    if(document.getElementById("txt1").value.search(patt)!=-1) {
    alert("wrong");
    }
    }
    </script>
      

  2.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=gbk" />
      <title>Test</title>
    </head><script type="text/javascript">
    function filter(e) {
      var v = e.value;
      e.value = v.replace(/[^\w\u4e00-\u9fa5]/g, '');
      if(v.length != e.value.length) {
        document.getElementById('info').innerHTML = '只接受 A-Z,a-z, 0-9,_ 以及中文';
      } else {
        document.getElementById('info').innerHTML = '';
      }
    }
    </script><style type="text/css">
    span#info {
      font-size: 11pt;
      color: red;
      margin-left: 10px;
    }
    </style><body>
      <form name="frm" action="#">
        Value: <input type="text" name="txt" onkeyup="filter(this)" onblur="filter(this)"><span id="info"></span>
      </form>
    </body>
      

  3.   

    var patt=/[^\w_\u4e00-\u9fa5]+/g;