欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

jquery.form提交數組

錢瀠龍1年前8瀏覽0評論

jQuery Form插件是一個非常流行的Ajax上傳插件,它可以讓我們輕松地處理表單提交的數據。其中一個常見的問題就是如何提交數組類型的數據。當我們有一些表單元素的值是數組時(比如多選框),我們需要將這些數組值包裝成一個對象,然后進行提交。

$('form').submit(function(){
var formData = $(this).serializeArray();
var arr = [];
$.each(formData, function(){
if(this.name.match(/\[\]$/)) {
var name = this.name.substr(0, this.name.length - 2);
arr[name] = arr[name] || [];
arr[name].push(this.value);
} else {
arr[this.name] = this.value;
}
});
$(this).ajaxSubmit({
url: '/example',
type: 'post',
data: {data: arr},
success: function(response){
// handle success
},
error: function(){
// handle error
}
});
});

首先,我們將表單元素的值序列化為一個數組formData。接下來,我們創建一個空數組用于存放包裝后的數據arr。

然后,我們使用each()方法遍歷formData數組中所有的表單元素,對于數組類型的表單元素,我們將其包裝成一個對象,對象的key為該元素的name屬性值,value為該元素的value屬性值。對于非數組類型的表單元素,我們將key和value直接存入數組arr中。

最后,我們使用ajaxSubmit()方法提交表單數據,將數組arr包裝成一個對象放入data屬性中進行提交,并在成功和失敗的回調函數中對返回結果進行處理。