我想检查点击的div的子元素是否具有某个类。
所以我这样做:
$('.panel').on('click', function (event) { if($(".panel input").hasClass('h5_validator_error')) { event.stopPropagation(); } });
问题:我有一个.panel
课程。由于我的整个网站都是由用户和json文件生成的,因此我需要一个没有 ID 的动态环境。
所以,实际上我的if语句阻止了所有.panel
次点击工作。
我想做这样的事情:
if($(event.target + ".panel input").hasClass('h5_validator_error')) { event.stopPropagation(); }
所以我想选择所有输入 - 来自点击的div的元素 有一个数组并循环通过它。
这可能吗?或者,选择被点击子元素的子元素的最有效方法是什么?
答案 0 :(得分:1)
您应该使用this
来获取目标元素:
$(this).find("input").hasClass('h5_validator_error');
或
$('input',this).hasClass('h5_validator_error');
答案 1 :(得分:0)
您应该创建dom对象$(event.target)
,然后对其应用jquery方法。
试试这个:
$('.panel').on('click', function (event) {
if($(event.target).find('input').hasClass('h5_validator_error')){
alert('true');
}
else{
alert('false');
}
});