输入密码字段的默认文本

时间:2011-06-05 19:39:21

标签: javascript forms

有没有办法在密码字段中输入默认文字?

基本上我有一个密码字段,该字段应该掩盖某人的ID,但在用户输入ID之前,我希望字段的值显示“在此输入您的ID”

有办法做到这一点吗?

3 个答案:

答案 0 :(得分:4)

如果你想使用普通的javascript,你可以这样做:

<强> HTML

<label for="placeholder">Password:</label>
<input type="text" id="placeholder" value="Enter password here" onFocus="setPass();"/>
<input type="password" id="password" value="" onBlur="checkPass();" style="display: none;"/>

<强>的Javascript

function setPass() {
    document.getElementById('placeholder').style.display = 'none';
    document.getElementById('password').style.display = 'inline';
    document.getElementById('password').focus();
}
function checkPass() {
    if (document.getElementById('password').value.length == 0) {
        document.getElementById('placeholder').style.display = 'inline';
        document.getElementById('password').style.display = 'none';
    }
}

http://jsfiddle.net/Lx4NN/1/

答案 1 :(得分:1)

此时如果您想支持所有类型的浏览器(已启用JavaScript),您应该使用JavaScript。我相信你可以使用一些脚本,但当然自己写一个也是一个不错的选择。在早期阶段,我自己编写了一个脚本,在没有输入密码的情况下,我将输入的TYPE字段更改为'text'。当用户关注密码字段时,类型已更改回“密码”。

Mind Internet Explorer:我相信7及以下版本不允许您更改字段的类型。但是其他任何体面的浏览器都可以。

如果您的要求是支持至少HTML 5的浏览器应该能够使用它,请查看 HTML 5占位符。我认为它也完全符合您的要求。

Check this link for more info,它也有一些关于占位符的信息。玩得开心! ;)

答案 2 :(得分:0)

<input type="text" value="Enter your ID here"
    onfocus="if (this.value == 'Enter your ID here') this.value = ''"
    onblur="if (this.value == '') this.value = 'Enter your ID here'"
/>