关于jQuery.ajax的问题

时间:2022-10-08 07:36:10

思考:如下代码有什么问题?

$.ajax({
type: "get",
contentType: "application/json",
data: i = 1,
url: followupUrl,
dataType: "JSON",
cache: false,
async: false,
success: function(data){
alert(data); //1
if(data){ //2
alert(data.colData); //3
alert(data.success); //4
}
},
error: function(){alert("error");}
});

额,神马??alert(data)有值,但是alert(data.colData); //3     alert(data.success); //4 ,都为undefined?明明是有值的呀!这是怎么回事?

第一:data弹出有值,并显示colData和success也有值,说明data有值。

第二:2处进入if里面再次说明,data有值。

第三:3处 4出没值,但是1处又显示colData和success有值。只能说明data不是对象,而是……对就是 它它它。。它是字符串。


我来个去~  原来......是这样   是这个错误。

唉,JSON的问题。


真确的如下:

$.ajax({
type: "get",
contentType: "application/json",
data: i = 1,
url: followupUrl,
dataType: "json",//这里错了,要小写,否则 它会按照字符串格式显示data(即data是一个整的字符串),而不能安json格式解析。
cache: false,
async: false,
success: function(data){
$("#debugBox").append(data);
if(data){
alert(data.colData);
alert(data.success);
}
},
error: function(){alert("error");}
});


普及小知识:在以后的html版本标准中,以及xhtml里, 1.所有的标签都要小写, 2.所有的标签都要闭合(即别是br也要写成<br />而不能写成<br > ,虽然没有闭合的意义),

3.所有的属性都要加引号“”。

当然,我想,js或者其他语言也都有一定规则,养成一个良好的习惯。比如,就想我意义 因为一点点问题而浪费一上午时间。