首页新闻招聘找找看知识库
  • 回复:5 浏览:2589 2010-04-29 17:23 来自 NineTyNine_LP
    var names;
    function GetData() {
    $.ajax({
    data:
    "Action=GetParameterGroupNames",
    success:
    function(pgNames) {
    pgNames
    = eval("(" + pgNames + ")");
    names
    = pgNames;
    }
    });
    }
    function Bind1(names) {
    //......
    }

    function Bind2(names) {
    //......
    }
    $(document).ready(
    function() {
    $.ajaxSetup({
    url:
    "Handlers/FileHandler.ashx",
    async:
    true,
    cache:
    false,
    type:
    "GET",
    dataType:
    "text",
    processData:
    false,
    error:
    function(error) {
    alert(
    "出错了:" + error);
    }
    });
    GetData();
    Bind1(names);
    Bind2(names);
    });

     

    如果这样写代码,那么当执行到Bind1时,GetData()函数的ajax还没执行回调函数,这时names为空。
    请问这个问题应该怎么解决啊?

  • NineTyNine_LP
    2010-04-29 17:24 NineTyNine_LP
    在GetData中使用return,也一样
    第1楼 回到顶楼
  • kk3k
    2010-07-24 11:11 kk3k
    1)用同步模式AJAX
    2)在回调函数中调用 关联操作
    success: function(pgNames) {
    pgNames = eval("(" + pgNames + ")");
    names = pgNames;
    Bind1(names);
    Bind2(names);

    }
    第2楼 回到顶楼
  • xinshenghu
    2012-02-08 17:54 xinshenghu
    没url啊
    第3楼 回到顶楼
  • 许自己个未来
    2012-08-14 18:02 许自己个未来
    第4楼 回到顶楼
  • 许自己个未来
    2012-08-14 18:03 许自己个未来
    @kk3k
    学习啦
    第5楼 回到顶楼
登录后才能评论,请先登录注册