我正在创建一个简单的类,有2个方法:
- 初始化**('/路径/到/xml文件')
- 测试**(材料)
主要的问题是测试方法依赖于加载的XML文件才能工作.所以,当我这样做的时候:
f.init('/sources/model.xml');
f.test(it);
它失败的原因是test使用了加载XML文件时生成的结构。
因为我使用jQuery加载XML文件,使用get方法,我可以这样做一些事情:
f.init('/sources/model.xml',
function() {
if (this.test(it) ) {
alert('OK, it works!');
}else {
alert('Wrong!');
}
});
并将我的回调放在getjQuery方法的success回调中....但是,是否可以执行类似我上面提到的操作?
我会很感激任何帮助。
- 注意**:我尝试在test函数中使用变量"loaded",并使用
setInterval
函数检查XML文件是否已加载,但不起作用。
- 注意**:我尝试在test函数中使用变量"loaded",并使用
1条答案
按热度按时间cwdobuhd1#
您应该使用回调来防止阻塞,但是如果您真的希望
init
函数阻塞直到它收到响应,您可以选择使用$. ajax方法而不是$. getajax支持
async
选项,如果将其设置为false
,将阻止脚本执行,直到服务器响应基本用途:
文档,http://api.jquery.com/jQuery.ajax/