1

我试图弄清楚如何定位页面文档上所有表单上的每个输入(文本和密码)字段,以在使用此单个脚本聚焦时删除默认值:

$(document).ready(function()
{
    Input = $('input');
    default_value = Input.val();

    $('input').focus(function() 
    {
        if($(this).val() == default_value)
        {
            $(this).val("");
        }
    }).blur(function()
    {
        if($(this).val().length == 0)
        {
            $(this).val(default_value);
        }
    });
});

它仅适用于我页面上第一个表单中的第一个输入文本元素,但其余部分无效。请帮忙!

4

2 回答 2

1

获取所有输入类型的文本值:

$("input:text").each(function() {
  alert($(this).val());
});

获取所有输入类型密码值:

$("input:password").each(function() {
  alert($(this).val());
});
于 2013-03-27T23:35:57.820 回答
0

那是因为val只返回第一个选定元素的值,而不是存储值,您可以使用对象defaultValue的属性HTMLInputElement

$('input[type=text], input[type=password]').focus(function() {
   if (this.value === this.defaultValue) $(this).val("");
}).blur(function(){
   if (this.value.length === 0) this.value = this.defaultValue;
});

http://jsfiddle.net/MscgZ/

于 2013-03-27T23:34:28.843 回答