我觉得该在用户提交或者填完email转到其他输入项时检测,而不是onkeyup.<input type="text" name="email" size="32" onBlur="value=value.replace(/[^\._@0-9a-z-]/g,'')">

解决方案 »

  1.   

    try<input type="text" name="email" size="32" onpaste="return false"
    onkeypress="if (!/[\b\._@0-9a-z-]/i.test(String.fromCharCode(event.keyCode))) event.keyCode = 0;">
      

  2.   

    》saucer
    你的这个对输入英文解决了,但可以输入中文!
      

  3.   

    你为什么要在输入时检测,提交时检测下面是一个功能函数,希望能用的上function isemail(str) 

    var bflag=true if (str.indexOf(".")==-1) { 
    bflag=false 

    if (str.indexOf("@")==-1) { 
    bflag=false 

    else if(str.charAt(0)=="@"){ 
    bflag=false 

    return bflag