日期:2014-05-16  浏览次数:20699 次

Ajax 加载数据问题

如下的 Ajax 无法正确得到数据 。

?

$(function(){
	var cstr = "<span>";

	$.getJSON(contactorUrl,{},function(data){
		$.each(data.contactors, function(i,name) {
			cstr += "<a onclick='o'>"+name+"</a>";
		});
	});
	
	cstr += "</span>";
	alert(cstr);

}

?

cstr 为空

?

似乎, Ajax 的数据, 只能在其方法体内部有效, 就是局部变量的形式 。

?

要能够正确加载到数据, 只能写为 :

?

$(function(){

	var obj = $(this).parent();
	$.getJSON(contactorUrl,{},function(data){
		var cstr = "<span>";
		$.each(data.contactors, function(i,name) {
			cstr += "<a onclick='o'>"+name+"</a>";
		});
		cstr += "</span>";
		obj.append(cstr);
	});

}

?

?

就是把要改变内容的对象传递到Ajax方法体内部去加载数据 。

?