NCS123456 2012-11-26 18:30 采纳率: 0%
浏览 516
已采纳

如何把ajax返回的responseText赋值给外部变量

[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

  • 写回答

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下就会有假死的情况,多来两次用户就得有反应了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了