2 回答

TA貢獻(xiàn)1868條經(jīng)驗(yàn) 獲得超4個(gè)贊
form.serializeArray()//取得form里的表單對(duì)象,也就是每一個(gè)input,select等
$.each是像for一樣的循環(huán),按序列獲取沒(méi)一個(gè)對(duì)象。
each里的this指的當(dāng)前的ipnut,select等,獲取ipnut的name屬性值
obj[this['name']] =this['value'];最后返回由name和值組合的數(shù)組對(duì)象。

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超3個(gè)贊
將表單序列化成JSON對(duì)象
jQuery.prototype.serializeObject=function(){
var obj=new Object();
$.each(this.serializeArray(),function(index,param){
if(!(param.name in obj)){
obj[param.name]=param.value;
}
});
return obj;
};
設(shè)有form中有username,password兩個(gè)input,看效果
$("form").serializeArray()
[{"name":"username","value":""},{"name":"password","value":""}]
$("form").serializeObject()
{"username":"","password":""}
serializeObject僅適用于name值不重復(fù)的情況,若name值重復(fù),則取第一個(gè)。
添加回答
舉報(bào)