$('input[name=boxes], .item_add a ').on('click', function(e) {
e.preventDefault();
//do stuff inherent to both
}
当我点击链接[.item add a]
时,是否有办法阻止默认的滚动操作,但仍然保持默认操作,即检查并取消选中复选框input[name=boxes]
,而不会将这两个分成单独的onclick功能
答案 0 :(得分:6)
$('input[name=boxes], .item_add a ').on('click', function(e) {
this.tagName == 'A' && e.preventDefault();
//do stuff inherent to both
}
答案 1 :(得分:4)
$('input[name=boxes], .item_add a ').on('click', function(e) {
if($(e.target).is('a')) e.preventDefault(); //if it is a link then prevent
//do stuff inherent to both
})
答案 2 :(得分:1)
检查目标元素
if($(this).is('.item_add a')) e.preventDefault();
答案 3 :(得分:1)
$('input[name=boxes], .item_add a ').on('click', function(e) {
if (this.tagName == "A"){
e.preventDefault();
}
//do stuff inherent to both
}
答案 4 :(得分:0)
你可以将它保存在一个函数中,但是在函数内部进行检查吗?
if(!$(this).is(':checkbox')) {
e.preventDefault();
return false;
}
答案 5 :(得分:0)
试试这个:
$('input[name=boxes], .item_add a ').on('click', function(e) {
if (!$(this).is(':checkbox') {
e.preventDefault();
}
//do stuff inherent to both
}