请大家帮我看看除了什么问题?
聚焦没反应。
我做的效果是,失去焦点后判断,不正确就在后面加一个<span>标签提示密码错误,然后返回去聚焦。代码如下:
function pw1(){
var pw1Data=document.getElementById("pw1").value;
var pw1Reg=/^(?!([^a-z]¦[^a-z]*[a-z][^a-z]*¦[^a-z]*[a-z][^a-z]*[a-z][^a-z]*)$)(?!\D$)(?![a-z0-9]$)[!#$&()*,\-.\/0-9:;<=>?@\[\]_`a-z{¦}~]{6,16}$/ig;
if(pw1Data.match(pw1Reg)==null){
str="密码格式不正确,请从新输入!";
document.getElementById("pw1").nextSibling.innerHTML=str;
}else{
str="";
document.getElementById("pw1").nextSibling.innerHTML=str;
}
}}

解决方案 »

  1.   


    str="密码格式不正确,请从新输入!"; 
    document.getElementById("pw1").nextSibling.innerHTML=str; 
    document.getElementById("pw1").focus();//使元素得到焦点
      

  2.   


    document.getElementById("pw1").nextSibling.innerHTML=str;
    document.getElementById("pw1").focus();
      

  3.   

    可以用onblur事件来写一个你想要的函数
      

  4.   


    function pw1(){ 
    var pw1Data=document.getElementById("pw1").value; 
    var pw1Reg=/^(?!([^a-z]¦[^a-z]*[a-z][^a-z]*¦[^a-z]*[a-z][^a-z]*[a-z][^a-z]*)$)(?!\D$)(?![a-z0-9]$)[!#$&()*,\-.\/0-9:; <=>?@\[\]_`a-z{¦}~]{6,16}$/ig; 
    if(pw1Data.match(pw1Reg)==null){ 
    str="密码格式不正确,请从新输入!"; 
    document.getElementById("pw1").nextSibling.innerHTML=str; 
    }else{ 
    str=""; 
    document.getElementById("pw1").nextSibling.innerHTML=str; 

    document.getElementById("pw1").focus();
    }