通過構(gòu)造AJAX參數(shù)實(shí)現(xiàn)表單元素JSON相互轉(zhuǎn)換
ajax提交服務(wù)器數(shù)據(jù), 整理一下轉(zhuǎn)換方法。
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.表單元素轉(zhuǎn)QueryString
var q = $('#fm,#UserId').serialize(); //q = UserName=UserName1&UserId=UserId1
2.字符串, JSON 互相轉(zhuǎn)換
var obj = jQuery.parseJSON('{"name":"John"}');
alert( obj.name === "John" );
可以利用jquery-json插件實(shí)現(xiàn)轉(zhuǎn)換,直接引用示例
var thing = {plugin: 'jquery-json', version: 2.3};
var encoded = $.toJSON( thing );
// '{"plugin":"jquery-json","version":2.3}'
var name = $.evalJSON( encoded ).plugin;
// "jquery-json"
var version = $.evalJSON(encoded).version;
// 2.3
3.表單,元素轉(zhuǎn)Name,Value數(shù)組
var arr = $("#fm,#UserId").serializeArray();
/*[
{name: 'UserName', value: '"UserName"1'},
{name: 'UserId', value: 'UserId'}
] */
4. 表單元素轉(zhuǎn)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 || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
};
var obj = $('form').serializeObject();
/*obj: Object
UserId: "UserId1"
UserName: "UserName1"
__proto__: Object*/
5. JSON2FORM
$.getJSON('url_to_file', function(data) {
for (var i in data) {
$('input[name="'+i+'"]').val(data[i]);
}
}
Google過程中發(fā)現(xiàn)一個(gè)更強(qiáng)大的插件 http://code.google.com/p/jquery-load-json/
data = {
"Name":"Emkay Entertainments",
"Address":"Nobel House, Regent Centre",
"Contact":"Phone"
}
$('div#data').loadJSON(data);
<div 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>
</div>
- JS簡(jiǎn)單循環(huán)遍歷json數(shù)組的方法
- js實(shí)現(xiàn)將json數(shù)組顯示前臺(tái)table中
- JS實(shí)現(xiàn)給json數(shù)組動(dòng)態(tài)賦值的方法示例
- js 獲取json數(shù)組里面數(shù)組的長(zhǎng)度實(shí)例
- 用javascript對(duì)一個(gè)json數(shù)組深度賦值示例
- js對(duì)象轉(zhuǎn)json數(shù)組的簡(jiǎn)單實(shí)現(xiàn)案例
- JS實(shí)現(xiàn)的JSON數(shù)組去重算法示例
- JS實(shí)現(xiàn)鍵值對(duì)遍歷json數(shù)組功能示例
- JavaScript實(shí)現(xiàn)構(gòu)造json數(shù)組的方法分析
相關(guān)文章
AJAX顯示加載中并彈出圖層遮擋頁面的實(shí)現(xiàn)示例
大家都知道AJAX的請(qǐng)求是異步的,這種異步的機(jī)制給我們帶來了體驗(yàn)上的優(yōu)化,但是同時(shí)我要求我們有更完善的思維去處理一個(gè)業(yè)務(wù)。當(dāng)用戶請(qǐng)求后長(zhǎng)時(shí)間沒有回應(yīng)是一種非常不好的用戶體驗(yàn),所以我們可以在請(qǐng)求后利用AJAX顯示加載中并彈出圖層遮擋頁面,下面來看看實(shí)現(xiàn)方法。2016-12-12
ajax結(jié)合豆瓣搜索結(jié)果進(jìn)行分頁完整代碼
這篇文章主要為大家詳細(xì)介紹了ajax結(jié)合豆瓣搜索結(jié)果進(jìn)行分頁完整代碼,具有一定的參考價(jià)值,感興趣的朋友可以參考一下2016-10-10
ajax交互Struts2的action(客戶端/服務(wù)器端)
本文為大家探討下ajax交互Struts2的action并有客戶端及服務(wù)器端代碼,感興趣的朋友可以參考下,希望對(duì)大家有所幫助2013-08-08
通過history解決ajax不支持前進(jìn)/后退/刷新的問題
下面小編就為大家?guī)硪黄ㄟ^history解決ajax不支持前進(jìn)/后退/刷新的問題。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07

