如何解释jQuery中的表单?

时间:2015-05-13 11:41:35

标签: javascript jquery html

说,我有这个:

var html = '<form><input type="text" value="v" name="nnn"></form>';

现在我想“反序列化”这个,我的意思是获得一个带有键nnn和值v的对象/数组。所以,

{
    nnn: 'v',
    otherInputField: 'itsValue'
}

1 个答案:

答案 0 :(得分:2)

使用serializeArray

var html = '<form><input type="text" value="v" name="nnn"></form>';
$(html).serializeArray();

demo

如果绝对必须是纯对象,则可以将数组处理为像

这样的对象
$.fn.serializeObject = function()
{
    var o = {};
    var a = this.serializeArray();
    $.each(a, function() {
        if (o[this.name] !== undefined) {
            if (!o[this.name].push) {
                o[this.name] = [o[this.name]];
            }
            o[this.name].push(this.value || '');
        } else {
            o[this.name] = this.value || '';
        }
    });
    return o;
};

Convert form data to JavaScript object with jQuery