Javascript jQuery正在刷新页面

Javascript jQuery正在刷新页面,javascript,jquery,Javascript,Jquery,我对JQuery有一个问题:无论何时调用JQuery函数,只要执行if块,页面就会刷新 $(".remove").click(function() { removeOption($(this)); }); function removeOption(obj){ if (obj.parent().siblings().size() > 1){ obj.parent().remove(); } } 如果对象父对象。。。块执行时,页面刷新。它不限于函数:如果我更改if obj

我对JQuery有一个问题:无论何时调用JQuery函数,只要执行if块,页面就会刷新

$(".remove").click(function() {
    removeOption($(this));
});

function removeOption(obj){
if (obj.parent().siblings().size() > 1){
    obj.parent().remove();
}
}

如果对象父对象。。。块执行时,页面刷新。它不限于函数:如果我更改if obj.parent。。。如果是真的,我也有同样的问题。如果将removeOptionobj作为匿名函数放在第一个函数中,我也会遇到问题。这可能是JQuery中的一个bug,或者有人对此有什么见解吗?

在处理JQuery上的链接单击时,必须禁用默认的behviour

$(".remove").click(function() {
    removeOption($(this));
    return false;
});
通过单击链接,您的jquery事件被引发,然后调用removeOption$this;但您必须停止默认行为,以便我们使用:

$(".remove").click(function() {
   removeOption($(this));
   return false;
});
最后

另一种方法是调用preventDefault方法,如下所示:

 $(".remove").click(function(e) {
   e.preventDefault();
   removeOption($(this));
 });

Anas,

在处理jquery上的链接单击时,必须禁用默认的behviour

通过单击链接,您的jquery事件被引发,然后调用removeOption$this;但您必须停止默认行为,以便我们使用:

$(".remove").click(function() {
   removeOption($(this));
   return false;
});
最后

另一种方法是调用preventDefault方法,如下所示:

 $(".remove").click(function(e) {
   e.preventDefault();
   removeOption($(this));
 });

Anas,

它是一个类为.remove的a标记吗?没有办法让代码刷新页面,你只是在单击处理程序中缺少了一个默认值,然后单击按钮、锚定或其他任何东西,作为默认操作刷新页面。它是一个类为.remove的a标记吗?没有办法让代码刷新页面,您只是在单击处理程序中缺少一个默认值,单击按钮、锚定或其他任何内容都会作为默认操作刷新页面;因为这也会停止传播。更好的答案是e.preventDefault,因为您可能不希望返回false;因为这也会停止传播。更好的答案是e.preventDefault,因为您在behaviour@MattStern注意,阿纳斯对另一个答案的支持票。你真的应该使用preventDefault而不是返回false,而Anas应该在IMO.Se@Anas reply to上打上复选标记,以便在behaviour@MattStern注意,阿纳斯对另一个答案的支持票。您应该真正使用preventDefault,而不是返回false,而且Anas应该打勾。