ajax json 请求时,如果返回的不是字符串,不是json 请问怎么处理?

2024-11-01 06:15:00
推荐回答(3个)
回答1:

JSON在后台和传输过程中都是纯文本的,到了JS中被转换为了对象,可以任意处理。
假设你已经知道后台如何返回正确的JSON格式:
var obj_a={"test":"name"};
obj_a.test=="name";
var obj_a={"test":1};
obj_a.test==1;
var obj_a={"test":[1,2,3,4,5,6]};
obj_a.test[0]==1;
obj_a.test[1]==2;
我有这样几个建议:
1、搞清楚什么是JSON以及JSON格式如何书写的。
2、搞清楚什么JS对象以数组。
3、搞清楚JSON与JS对象和数组的区别。
4、如何读取对象中的值
5、js中并不存在JSON,所有返回的字符都转化为了js对象和数组。
弄清楚了上面几个东西,你就没问题了。

回答2:

js必须把这段字符串转换为json Object才能处理: var json= eval"("( + str + )")";

回答3:

var html = $.ajax({
url: "some.php",
async: false
}).responseText;
if(html=='success')...
给分吧