代码如下:
$(document).ready(function () {
var res;
$.ajax({
type: 'post',
url: 'GridDemo.aspx/PlaceOrder',
contentType: "application/json; charset=utf-8",
dataType: 'json',
success: function (results) {
var strJSON = results.d; //得到的JSON
var obj = eval("(" + strJSON + ")"); //转换后的JSON对象
res = obj.a;
console.log(obj.a);
},
error: function () { alert('error'); }
});
$("#attr01").wijgrid({
allowSorting: true,
data: res,
});
});
我理想的是先ajax得到数据,再绑定到控件,可事实是先执行的绑定,后执行ajax方法,js不是按顺序执行吗?
默认情况下JQuery的AJAX是异步执行的,所以它在去获取数据的同时也在执行下面的绑定,因为获取数据是需要一定的时间,所以你看到的效果是先绑定后获取数据。只要添加添加async:false.即修改为同步了,具体的代码如下:
$.ajax({
type: 'post',
async: false,
url: 'GridDemo.aspx/PlaceOrder',
contentType: "application/json; charset=utf-8",
dataType: 'json',
手机扫一扫
移动阅读更方便
你可能感兴趣的文章