我遇到了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中的错误,还是有人有任何见解?
答案 0 :(得分:6)
当你处理链接时点击jquery,你必须禁用默认的behviour。
通过单击链接,引发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));
});
鸭,
答案 1 :(得分:0)
$(".remove").click(function() {
removeOption($(this));
return false;
});