问题

如何将我的表单的所有元素转换为JavaScript物件?

我想要有一些方法来从我的表单自动构建一个JavaScript对象,而不必循环遍历每个元素.我不想要一个由 $('#formid').serialize(); 返回的字符串,也不需要 $('#formid')返回的映射serializeArray ();



解决方法

serializeArray 已经做到了.您只需要按照所需格式按摩数据:

$.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;
};

此操作的示例: 小提琴




相关问题推荐