我有以下查询来选择特定类型的所有input
和select
元素,我需要对其进行扩展以排除其父级具有特定类别的所有项目:
$('input,select')
.not('[type="checkbox"],[type="radio"],[type="button"],[type="submit"]')
.not(':parent.no-field-hint') // <-- NEED TO FIX THIS
.on('focus', function () {
// do something
});
如何修改相关行?
答案 0 :(得分:1)
这里的逻辑对于选择器来说有点过于复杂,除了没有:parent
选择器的事实。您可以使用filter()
来实现您的需求:
$('input, select').not('[type="checkbox"], [type="radio"], [type="button"], [type="submit"]').filter(function() {
return !$(this).parent().hasClass('no-field-hint');
}).on('focus', function () {
// do something
});
答案 1 :(得分:1)
只需检查您的函数父类是什么: https://jsfiddle.net/gzvbd729/
async