首页 >web前端 >js教程 >通过构造AJAX参数实现表单元素JSON相互转换

通过构造AJAX参数实现表单元素JSON相互转换

亚连
亚连原创
2018-05-24 10:25:541460浏览

这篇文章主要介绍了通过构造AJAX参数实现表单元素JSON相互转换 的相关介绍,需要的朋友可以参考下

ajax提交服务器数据, 整理一下转换方法。

HTML:

<form id="fm" name="fm" action="">
<input name="UserName" type="text" value="UserName1"/>
</form>
<input name="UserId" id="UserId" type="text" value="UserId1"/>

1.表单元素转QueryString

var q = $(&#39;#fm,#UserId&#39;).serialize(); //q = UserName=UserName1&UserId=UserId1

2.字符串, JSON 互相转换

var obj = jQuery.parseJSON(&#39;{"name":"John"}&#39;);
alert( obj.name === "John" );

可以利用jquery-json插件实现转换,直接引用示例

var thing = {plugin: &#39;jquery-json&#39;, version: 2.3};
var encoded = $.toJSON( thing );
// &#39;{"plugin":"jquery-json","version":2.3}&#39;
var name = $.evalJSON( encoded ).plugin;
// "jquery-json"
var version = $.evalJSON(encoded).version;
// 2.3

3.表单,元素转Name,Value数组

var arr = $("#fm,#UserId").serializeArray();
/*[ 
{name: &#39;UserName&#39;, value: &#39;"UserName"1&#39;}, 
{name: &#39;UserId&#39;, value: &#39;UserId&#39;}
] */

4. 表单元素转JSON

$.fn.serializeObject = function()
{
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name] !== undefined) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || &#39;&#39;);
} else {
o[this.name] = this.value || &#39;&#39;;
}
});
return o;
};
var obj = $(&#39;form&#39;).serializeObject();
/*obj: Object
UserId: "UserId1"
UserName: "UserName1"
__proto__: Object*/

5. JSON2FORM

$.getJSON(&#39;url_to_file&#39;, function(data) {
for (var i in data) {
$(&#39;input[name="&#39;+i+&#39;"]&#39;).val(data[i]);
}
}
data = {
"Name":"Emkay Entertainments",
"Address":"Nobel House, Regent Centre",
"Contact":"Phone"
} 
$(&#39;p#data&#39;).loadJSON(data);
<p id="data">
<h1 id="Name">Emkay Entertainments</h1>
<label for="Address">Address:</label>
<span id="Address">Nobel House, Regent Centre</span> 
<label for="Contact">Contact by:</label>
<span id="Contact">Phone</span>
</p>

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

Boa服务器下的ajax与cgi通信(图文教程)

Ajax+Struts2实现验证码验证功能(图文教程)

Ajax点击不断加载数据列表(图文教程)

以上是通过构造AJAX参数实现表单元素JSON相互转换的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn