<input type="text" id="testcode" maxlength="8" onkeyup="value=value.replace(/\d{3}\-\d{4}/g,'')"/>

解决方案 »

  1.   


    value=value.replace(/\d{3}(-d{4})?/g,'')
    这个赋值没意义.下面这样就可以了.
    <input type="text" id="testcode" maxlength="8" onkeyup="value.replace(/\d{3}\-\d{4}/g,'')"/>
      

  2.   


    value=value.replace(/\d{3}(-d{4})?/g,'')这样写是可以的,我试过了.
      

  3.   

    当然可以了,我是说它这样的赋值没意义,没说它不可以.
    value = value; 当然也不会错了.
      

  4.   

    要用个正则来完成,难
    <input type="text" id="testcode" maxlength="8" onkeyup="value=(/\d(?:\d(?:\d(?:\-\d{0,4})?)?)?/g.exec(value)||[''])[0];" /> 想不到更好的了