码迷,mamicode.com
首页 > 其他好文 > 详细

表单序列化用于传输数据

时间:2015-11-01 12:42:09      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:

function serialize(form){
var part=[],
field=null,
i,
len,
option,
optLen,
optValue;
for(i=0,len=form.elements.length;i<len;i++){
field=form.elements[i];
console.log(field.type);
switch (field.type){
case "select-one":
case "select-multiple":
if(field.name.length){
for(var j= 0,optLen=field.options.length;j<optLen;j++){
option=field.options[j];
if(option.selected){
if(option.hasAttribute){
optValue=(option.hasAttribute(‘value‘)?option.value:option.text);
}else{
optValue=(option.attribute(‘value‘).specified?option.value:option.text);
}
part.push(encodeURIComponent(field.name)+‘=‘+encodeURIComponent(optValue));
}
}
}
break;
case undefined:
case "file":
case "submit":
case "reset":
case "button":
break;
case "radio":
case "checkbox":
if(!field.checked){
break;
}
default :
if(field.name.length){
part.push(encodeURIComponent(field.name)+‘=‘+encodeURIComponent(field.value));
}
}
}
return part.join("&");
}

reference :高程14章

表单序列化用于传输数据

标签:

原文地址:http://www.cnblogs.com/wz0107/p/4927409.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!