Javascript 返回false在ajax调用块HREF锚标记值后不工作
我有一个这样的链接Javascript 返回false在ajax调用块HREF锚标记值后不工作,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个这样的链接 <a class="case" href="/communication/index">Link Name</a> 在这个checkCaseIsParked方法中,我有一个ajax调用,如果成功,我比较返回值,如果它是真的,那么我想阻止它进入下一个站点,即href上的链接 success: function (result, status, xhr) { if (result) { return false; }
<a class="case" href="/communication/index">Link Name</a>
在这个checkCaseIsParked方法中,我有一个ajax调用,如果成功,我比较返回值,如果它是真的,那么我想阻止它进入下一个站点,即href上的链接
success: function (result, status, xhr) {
if (result) { return false; }
else { return true };
}
我尝试返回false,但没有运气返回false的
必须同步发生。由于在响应返回之前,您不知道重定向是否应该发生,因此无论如何,您都应该返回false
(或preventDefault()
),然后,如果响应表示重定向正常,请手动单击()
:
const checkCaseIsParked=elm=>{
console.log('processing');
设置超时(()=>{
如果(elm.id=='case'){
elm.click();
}否则{
console.log(“失败”);
}
}, 1000);
};
$('case,'case2')。在('click',函数(事件){
if(event.originalEvent.isTrusted){
//事件是由用户输入触发的,而不是由Javascript触发的
复选框标记(此);
event.preventDefault();
}
});代码>
感谢您的快速回复,但在我的例子中,该链接并不是带有id的,因为它在表的每一行上都有类。“防止默认”正在工作,但如果条件为false,则不会移动到下一个站点。我如何才能类点击事件。请在问题本身中发布所有相关信息和要求(理想情况下,当您发布问题时,而不是在答案出现后),这样我们就有了一个调试的方法。让处理程序处理多个元素在代码段中看起来可以正常工作,看看如何同时处理#case
和#case2
,我没有添加一个条件来检查事件是否是原始的。非常感谢。
success: function (result, status, xhr) {
if (result) { return false; }
else { return true };
}