2010-10-24 54 views
0

我有两个文本框(pass1和pass2)。我想让pass2被隐藏,只有在pass1中输入内容时才会出现。当pass1为空时,Pass2应该隐藏。Javascript:在按键上显示第二个文本框

+0

您是否在寻找这种行为,因为用户的类型,或仅丢失焦点时,即模糊? – 2010-10-24 19:20:41

回答

1
<script type="text/javascript"> 

function checkVisibility() { 

    var pass1 = document.getElementById('pass1'); 
    var pass2 = document.getElementById('pass2'); 

    if (pass1.value.length > 0) { 
     pass2.style.visibility = 'visible'; 
    } else { 
     pass2.style.visibility = 'hidden'; 
    } 
} 

</script> 

<input id="pass1" type="password" onkeyup="checkVisibility()" /> 
<input id="pass2" type="password" style="visibility: hidden;"/> 
+0

不要使用内联事件处理程序! – 2010-10-24 19:37:14

2

使用同步pass2pass1的功能。

function syncTextFields() { 
    var pass1 = this; 
    var pass2 = document.getElementById('pass2'); 

    if(pass1.value == '') { 
     pass2.style.display = 'none'; 
    } 
    else { 
     pass2.style.display = ''; 
    } 
} 

然后在pass1字段中输入任何内容时运行同步功能。

pass1.onkeyup = syncTextFields; 

我们将逻辑分隔成一个函数,以便函数可以在页面加载时单独运行。

window.onload = function() { 
    syncTextFields(); 
    document.getElementById('pass1').onkeyup = syncTextFields; 
}; 
+0

似乎不是正在触发 – Rick 2010-10-24 19:32:23

相关问题