[code="java"]
function setHtml(){
var html = "";
$.getJSON("ajax!getList",function(data){
html = data.section;
alert(html);//这里就能取到html,但是外部html变量没有改变
});
alert(html);//这里答应就是空字符串
}
[/code]
请问有没有什么方法把$.getJSON("ajax!getList",function(data){});内的变量的值赋值给外部的html
如何把ajax返回的responseText赋值给外部变量
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- iteye_1767 2012-11-27 10:31关注
这种情况最好是把处理响应的逻辑写到匿名名方法里面:
function setHtml(){
$.getJSON("ajax!getList",function(data){
html = data.section;
alert(html);
//处理响应的逻辑写在这
});
}如果处理逻辑很长,你写一个函数在外面就好了:
function setHtml(){
$.getJSON("ajax!getList",function(data){
html = data.section;
afterGetList(html);
});
}function afterGetList(html){
alert(html);
//处理响应的逻辑写在这
}同步方法最好不用,网络出点小状态IE下就会有假死的情况,多来两次用户就得有反应了
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报