1

我在使用 JQuery 时遇到问题:每当调用 JQuery 函数时,只要执行 if 块,页面就会刷新。

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

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

如果执行 (obj.parent()...) 块,则页面刷新。它不仅限于功能:如果我将 if (obj.parent()... ) 更改为 if (true),我也会遇到同样的问题。如果我将 removeOption(obj) 作为匿名函数放在第一个函数中,我也会遇到问题。这可能是 JQuery 中的错误,还是有人有任何见解?

4

2 回答 2

6

当您处理 jquery 上的链接点击时,您必须禁用默认行为。

通过单击链接,引发 jquery 事件,然后调用 removeOption($(this));但是您必须停止默认行为,因此我们使用:

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

在末尾。

另一种方法是调用 preventDefault ( http://api.jquery.com/event.preventDefault/ ) 方法,如下所示:

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

阿纳斯,

于 2012-11-08T15:36:52.207 回答
0
$(".remove").click(function() {
    removeOption($(this));
    return false;
});
于 2012-11-08T15:26:08.683 回答