JQuery的。如何将输入值加载到数组?

时间:2009-12-07 11:13:32

标签: javascript jquery

我有多个输入字段。

<input type='text' size='10' name='firstname' id='firstname' />
<input type='text' size='20' name='lastname' id='lastname' />
<input type='password' size='5' name='password' id='password' />

我想用jQuery将它们的所有值都放到一个数组中。喜欢这个。

1 => 'Barack',
2 => 'Obama',
3 => '123456'

现有方法val()从第一次匹配返回值。

$('#firstname,#lastname,#password').val(); //returns only first name

2 个答案:

答案 0 :(得分:11)

这样做:

$('#firstname,#lastname,#password').map(function () { 
    return this.value; 
}).get();

答案 1 :(得分:1)

我为这个案子制作了tiniy插件:

    jQuery.fn.inputs2obj=function (){
        var out={};
        var arr=this.filter(':input').each(function () {
    e=$(this);
        out[e.attr('name')]=e.val();
        }).get();
        return out;
    }

用法示例:

inputs=$('form').find(':input').inputs2obj();