当jquery中的if语句失败时调用函数
问题描述:
这是相当新颖的。我有一个名为“getInformation”的函数,其中包含3个Ajax函数。当jquery中的if语句失败时调用函数
当if语句在这里显示的成功函数失败时,我想调用/触发“getInformation”函数,但我不知道使用哪个选择器(或者如果我甚至需要选择器)。
success: function(serverResponse){
if(serverResponse.length>1){
try{
var searchResultsHTML='';
console.log(serverResponse);
$("#searchResults").append(searchResultsHTML);
}catch (ex) {
console.error(ex);
$("#searchResults").text("An error occurred processing the data");
}
} else{
//run the other ajax calls
$.fn.getInfortmation();
}
答
我相信你可能会误解在jQuery中的$
的含义。这实际上仅仅是一个类别的缩写或别名,jQuery
是一个包含库中所有函数的类(或某个JS等价的持有者)。
仅仅因为您正在使用jQuery回调(success
处理程序)编写代码,并不意味着您只需要使用jQuery
函数。你可以自由使用你自己的代码,我相信getInformation
是你定义的函数之一。
为了解决这个问题,调用函数没有jQuery的$
像fn.getInformation
。我假设你的函数在一个不同的对象fn
中。如果不是,请删除fn
。
就选择器而言,这是一个不同的话题。这些用于在代码中的页面上轻松选择和使用HTML元素。 jQuery对此非常有用,但并非所有的jQuery函数都涉及到选择器/ DOM。例如,在这种情况下,看起来你可能正在做一些AJAX,它直接与操纵页面元素没有任何关系,而是关于将数据传递给服务器。
'getInformation'函数与元素操作函数或普通函数相关。如果是正常的函数,只需使用'callback'方法或jquery'promise'方法。或者也可以在这里添加'getInformation'函数,以便理解。 –
那什么不起作用?您已经在那里调用了该函数,但名称拼写错误。 – Pointy
我不知道如何声明函数,但我不认为你需要'$ .fn.',只需调用'getInformation()' – Taki