Form提交参数处理

form表单是可以直接提交的,但是很多场景我们需要对参数稍作处理,转换成标准的JSON结构提交。

基于jQuery的小插件:

$.prototype.serializeObject = function() {
    var a, o, h, i, e;
    a = this.serializeArray();
    o = {};
    h = o.hasOwnProperty;
    for (i = 0; i < a.length; i++) {
        e = a[i];
        if (!h.call(o, e.name)) {
            o[e.name] = e.value;
        }
    }
    return o;
};

然后使用:

$('form').submit(function(event) {
    event.preventDefault();

    var form = $(this);
    $.ajax({
        url: form.attr("action"),
        type: "POST",
        data: JSON.stringify(form.serializeObject()),
        contentType: "application/json",
        dataType: "json",
        beforeSend: function () {
        },
        error: function () {
        },
        complete:function () {
        },
        success: function (res) {
        }
    })
});


你可能感兴趣的:(JavaScript,jQuery)