如何从点击操作中过滤出一个对象? 我想防止Firefox href在复选框上传播,但是我在html上还有其他输入,按原样实施的方式将阻止我的输入提交:
<a href="picture-big.jpg">
<img src="https://imgur.com/gallery/DC0Iu" />
<input type="checkbox" name="delete" id="stopprop1"/>
<input type="checkbox" name="delete" id="stopprop"/>
<input type="checkbox" name="delete" class="stopprop"/>
<input type="checkbox" name="delete" class="stopprop"/>
<input type="checkbox" name="delete" class="stopprop"/>
</a>
JS:
$('input').click(function(e) {
e.preventDefault();
var _this = this;
console.log(_this.getElementById('stopprop'))
setTimeout(function() {
_this.checked = !_this.checked;
}, 1);
});
我可以过滤对象吗?并且如果e具有class或id x,则阻止该内容的href传播。
同一页面上的其他一些输入按钮被阻止提交。
<div class="cell empty" data-title="">
<input type="submit" class="recover-css" name="recover_vms" value="RECOVER" />
</div>
答案 0 :(得分:0)
<a>
标记中不能包含input
。但出于您的疑问:
对于class
使用id
,对于$(e.target).attr('id')
使用id
,则可以使用jQuery获得单击元素的$(e.target).attr('class')
或class
< / p>
因此您的代码可能如下所示:
$('input').click(function(e) {
if ($(e.target).attr('id') === 'someid') {
//do something
}
if ($(e.target).attr('class') === 'someclass') {
//do something else
}
});