我正在使用两种方法创建一个简单的类:
主要问题是测试方法取决于加载的xml文件 ... 所以,当我做这样的事情时:
f.init('/sources/model.xml');
f.test(it);
失败,因为测试使用加载xml文件时生成的结构。
由于我使用Jquery加载xml文件,使用 get 方法,我可以做一些事情 这样:
f.init('/sources/model.xml',
function() {
if (this.test(it) ) {
alert('OK, it works!');
}else {
alert('Wrong!');
}
});
并将我的回调放入获取 Jquery方法的成功回调中.... 但是,有可能做我上面提到的那些???
我将不胜感激。
注意: 我尝试在测试函数中使用变量“loaded”,并使用 setInterval 函数来检查xml文件是否已加载,但它对我不起作用。
答案 0 :(得分:0)
你应该使用回调来防止阻塞,但是如果你真的希望在收到响应之前有init
功能块,你可以选择使用$ .ajax方法而不是$ .get
$ .ajax支持async
选项,如果设置为false
将阻止脚本执行,直到服务器响应
基本用法:
$.ajax({
url: "/path/to/file"
type: "GET",
async: false,
success: function(data) {
// do something
}
});