首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

看了一段代码没太看懂 求高手给解释下注释的部分解决思路

2012-05-16 
看了一段代码没太看懂 求高手给解释下注释的部分JScript codeJS文件是:jquery-1.6.2.jsjQuery.extend({get

看了一段代码没太看懂 求高手给解释下注释的部分

JScript code
JS文件是:jquery-1.6.2.jsjQuery.extend({    getScript: function( url, callback ) {        return jQuery.get( url, undefined, callback, "script" );    },    getJSON: function( url, data, callback ) {        return jQuery.get( url, data, callback, "json" );    },Make.aspx页面调用var url = "Make.aspx?act=a&random=" + Math.random;$.getJSON(url, function(data) {     //这句的function(data)这个对象数据是从哪里得到的,是从上面的url执行完得到的?我打印了一下data,输出的值是objectvar json = eval(data);var count = json["test"].length;       //这句的json["test"],这里的test是从哪接的呢,找了半天也没找到,打印了一下count,得到的结果是8,这个8我就不太明白是什么了,要说数据库里的数据,我数据库里才6条$.each(json["test"], function(i) {    str += "<td colspan=\"" + this.ID + "\" class=\"txt-4\">" + this.Name + "</td>";    colspan_num = parseInt(colspan_num) + parseInt(this.ID);    //alert(colspan_num);});


[解决办法]
1,data 是固定写法,指ajax返回的结果字符串,你可以alert来看到底是什么
2,
var json = eval(data);
var count = json["test"].length; //这句的json["test"],
json代表了返回的字符串的激活对象,
比如data的字符串可能是这样 
{"test":{"b":1},"test":{"b":2},"name":"aa"}
那么json=eval(data)后
json就是一个对象,json["test"]就是 这个对象内名为"test"的子对象的集合,
json["test"].length 就应该是2

热点排行