jQuery 中使用 JSON

本文介绍jQuery内置的JSON处理方法,包括使用parseJSON解析JSON字符串及通过toJSON将JavaScript对象序列化为JSON格式。同时展示了如何利用这些方法进行AJAX请求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在 jQuery 中已经提供了对于解析 JSON 的内在支持,

jQuery.parseJSON 函数提供了解析的支持,[url='http://api.jquery.com/jQuery.parseJSON/']详细的说明见这里[/url]。


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


使用对象生成 JSON 格式串

在 jQuery 中并没有提供直接将普通的 JavaScript 对象转换为 JSON 串的方法,可以使用下面的扩展库来完成。

jquery-json 扩展库

这个库用来扩展 jQuery ,对于 JSON 的使用,扩展了两个方法。

toJSON 方法用来将一个普通的 JavaScript 对象序列化为 JSON 串。

var thing = {plugin: 'jquery-json', version: 2.3};
var encoded = $.toJSON( thing ); // '{"plugin":"jquery-json","version":2.3}'


evalJSON 方法将一个 JSON 串解析为一个普通的 JavaScript 对象。


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


以下是我一直发送失败,加了$.toJSON(senddata)后马上就成功了。使用$.toJSON需要一个jQuery插件,见附件。

var user=new Object();
user.email = email;
user.first_name = firstName;
user.last_name = lastName;
user.password = password;

var senddata = {};
senddata.user=user;
senddata.api_key=levelup_api_key;

// log(JSON.stringify(senddata));
var encoded = $.toJSON(senddata);

$.ajax({
type: "POST",
url: levelup_register,//url
data: encoded,
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
},
beforeSend: function() {$.mobile.showPageLoadingMsg();},
complete: function() {$.mobile.hidePageLoadingMsg();},
success: function(data){
doSignInLevelUp_base(email,password);
},
error: function(error){
// log(JSON.stringify(error));
showAlert(error.status+":"+error.statusText);
}
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值