Jquery 加载jgrid之前的Ajax调用
我需要从php脚本中预加载一些值,我正在使用$.post调用jquery,如下所示:Jquery 加载jgrid之前的Ajax调用,jquery,jqgrid,jqgrid-php,Jquery,Jqgrid,Jqgrid Php,我需要从php脚本中预加载一些值,我正在使用$.post调用jquery,如下所示: ... var grade, section,from,until,user; function loadData(){ $.post('procstring.php', {data: window.location.hash}, function(result){ grade =
...
var grade, section,from,until,user;
function loadData(){
$.post('procstring.php', {data: window.location.hash},
function(result){
grade = result.grade;
section = result.section;
from = result.from;
until = result.until;
user = result.user;
},
'json');
}
我需要这个值来呈现这样的jqgrid
$("#list").jqGrid({
url: 'report.php?g=' + grade + '&s=' + section + '&f=' + from + '&u='+ until + '&u=' + user + '&report=1&searchString=null&searchField=null&searchOper=null',
datatype: 'json',
mtype: 'GET',
…
所以我在$list.jqGrid{…之前调用loadData,但是jqGrid似乎是在loadData之前加载的,不知道为什么,所以我在等级中得到了未定义的值,部分变量
我尝试过像beforeRequest和loadBeforeSend这样的jgrid事件,但没有成功
有什么建议吗?。谢谢。因为AJAX是异步的。您需要将$list.jqGrid{…放入成功回调中:
// No need to define the variables outside
$.post('procstring.php', { data: window.location.hash },
function(result)
var grade = result.grade;
var section = result.section;
var from = result.from;
var until = result.until;
var user = result.user;
$("#list").jqGrid({...
},
'json');