2011-12-07 42 views
2

我有一个函数,只要点击/关注,就可以将文本输入设置为“”。它可以很好地工作,当我将默认值编码到一个数组中时,但是我不想这样做,而是得到一个默认值的集合,这样我就可以在多个页面上使用它,而无需添加值来手动将值添加到阵列。获取输入值的集合

我通过所有输入的试图循环,并创建一个数组,但我福利局技能阻止我这样做,这里是我到目前为止有:

$(function() { 
    var defaultValues = $('input[type="text"]').each(function) { 
    $(this).val(); 
)}; // instead of simply ["default value 1", "default value 2"] 

    $('input[type="text"]').live("focus", function() { 
    $(this).css("color", "#000000"); 
    if (jQuery.inArray($(this).val(), defaultValues)) { 
     $(this).val(""); 
    } 
    }); 
}); 
+4

Oooops,一个错字。我只会编辑... noooooooooooo!现在我必须重新开始! – Quentin

+0

@Quentin - Just got that :) – karim79

回答

4

尝试.map代替:

var defaultValues = $('input[type="text"]').map(function() { 
     return this.value; 
    }).get(); 

...并清理你的语法:

演示:http://jsfiddle.net/Ew7h8/

+0

出于好奇,你是如何设置两次? –

+4

十一个小时的工作,两杯酒,洗衣机修理DIY,偷了iPhone 4S,被女友甩了。你问! – karim79

+0

@ karim79:在这里,一个可怜的选票肯定会让你所有的问题消失! –