我有lis包含锚标签等。点击li打开一个模态窗口,点击子锚标签删除li(这是可取的)。但是点击锚标签会触发li上的点击事件并打开模态窗口。如何解决这个问题。我甚至尝试过event.stopPropagation,但即使这样也没有停止模态打开。
Thanx提前!!
答案 0 :(得分:0)
有两种方法可以避免事件传播:
要删除/替换父li,请单击子锚点,您可以使用replaceWith。
return keypressed=False # returns True if keypressed==False else False

$(function () {
$('li').click(function(e) { // if event is originated from li OK
if ($(e.target).is('li')) {
alert('open modal');
}
});
$('a').click(function(e) {
e.preventDefault();
//e.stopPropagation(); // stop propagation
$(this).parent('li').replaceWith($(this)); // remove parent li
});
});

答案 1 :(得分:0)
要让锚元素不做基本的事情(继续使用所需的网址),你必须使用jQuery的event.preventDefault方法。
基本用途:
$('a').click(function(e){
e.preventDefault();
});