我有一个提供标准扩展点的JavaScript小部件。其中之一是beforecreate
功能。它应返回false
以防止创建项目。
我已经使用jQuery在此函数中添加了Ajax调用:
beforecreate: function (node, targetNode, type, to) {
jQuery.get('http://example.com/catalog/create/' + targetNode.id + '?name=' + encode(to.inp[0].value),
function (result) {
if (result.isOk == false)
alert(result.message);
});
}
但是我想防止我的小部件创建该项目,因此我应该false
在母函数中返回,而不是在回调中返回。有没有一种方法可以使用jQuery或任何其他浏览器内API执行同步AJAX请求?
Since the original question was about
jQuery.get
, it is worth mentioning here that (as mentioned here) one could useasync: false
in a$.get()
but ideally avoid it since asynchronousXMLHTTPRequest
is deprecated (and the browser may give a warning):