您的位置:首页 > 移动开发 > Objective-C

获取form表单的值并转化为字符串、JSONArray或JSONObject的方法及form取不到值的解决办法

2016-09-01 22:38 1071 查看
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">form表单提交时,可能需要转化为不同的形式来作为参数请求接口。本文总结了将form表单的值并转化为字符串、JSONArray或JSONObject的方法。</span>

1. form转化为字符串

<pre name="code" class="html"><pre name="code" class="html">var a=$('form').serialize();
alert(a);



该方法将form值转化为 key=value&key=value 的形式。

2. form转化为JSONArray

var a=$('form').serializeArray();
var str=JSON.stringify(a);
alert(str);

3. form转化为JSONObject
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"></span><pre name="code" class="html"><span style="white-space:pre">	</span>function submit(){
var a=$('form').serializeObject() ;
var str=JSON.stringify(a);
console.info(str);
}

$.fn.serializeObject = function() {
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name]) {
if (!o[this.name].push) {
o[this.name] = [ o[this.name] ];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
}




附:form表单取不到input textarea值的解决办法

以上方法均可获取到input textarea的值,如果alert为空字符串,请检查input textarea的name属性是否已赋值,如没有name属性,则form取不到该文本框的值。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐