请问用js序列化表单obj[this['name']])是什么意思

function serializeForm(form){
var obj = { };
$.each(form.serializeArray(),function(index){
if(obj[this['name']]){
obj[this['name']] = obj[this['name']] + ','+this['value'];
}else {
obj[this['name']] =this['value'];
}
});
return obj;
}

梵蒂冈之花
浏览 147回答 2
2回答

MYYA

form.serializeArray()//取得form里的表单对象,也就是每一个input,select等$.each是像for一样的循环,按序列获取没一个对象。each里的this指的当前的ipnut,select等,获取ipnut的name属性值obj[this['name']] =this['value'];最后返回由name和值组合的数组对象。

狐的传说

将表单序列化成JSON对象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;};设有form中有username,password两个input,看效果$("form").serializeArray()[{"name":"username","value":""},{"name":"password","value":""}]$("form").serializeObject(){"username":"","password":""}serializeObject仅适用于name值不重复的情况,若name值重复,则取第一个。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java
JavaScript