0

请在此处查看:http: //jsfiddle.net/9VaW2/1/

我想jData在外面有空

$http({method: 'POST', url: '/someurl'}).
  success(function(data, status, headers, config) {
    var jData = data;
  }).
    error(function(data, status, headers, config) {
  });

但是当我这样做时:

$view.availableData = {
                cols:{ID:'ID', Date:'Date'},
                rows:{data:jData},
                options:{}
            };
   
    

它给了我这个错误

ReferenceError:未定义 jData

编辑 更新小提琴

http://jsfiddle.net/9VaW2/3/

** 我想我找到了进行同步调用的解决方案..async : false。这样可行。我认为页面的加载速度比数据返回的速度要快....想知道是否有人有更好的解决方案**

4

1 回答 1

0

只需定义为全局变量。

var jData;

$http({method: 'POST', url: '/someurl'}).
    success(function(data, status, headers, config) {
      jData = data;
    }).
    error(function(data, status, headers, config) {
    });

$view.availableData = {
    cols:{ID:'ID', Date:'Date'},
    rows:{data:jData},
    options:{}
};
于 2012-05-15T17:11:19.517 回答