如何定位所有输入文本和密码值?

时间:2013-03-27 23:32:18

标签: javascript jquery input

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

$(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);
        }
    });
});

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

2 个答案:

答案 0 :(得分:1)

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

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

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

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

答案 1 :(得分:0)

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

$('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/