$('select').change(function() {
//important stuff
});
在执行important stuff
之前,我想通过其ID验证有问题的选择器。我想要影响的所有ID都以_stat
结尾。你会如何用JQuery中的正则表达式(或其他东西)来做到这一点?
$('select').change(function() {
if ($("select[id*='_stat']")) { //<~ this aint work
//important stuff
}
});
答案 0 :(得分:3)
您可以使用if ($(this).is("select[id$='_stat']"))
执行此操作,但最好只将事件处理程序附加到这些元素 - 然后您根本不需要检查:
$("select[id$='_stat']").change(function() {
//important stuff
});
答案 1 :(得分:1)
您正在寻找:
if($(this).is('[id$="_stat"]')) {
// important stuff
}
虽然如果您只希望change
处理程序在select
元素的_stat
元素上运行,那么您应该查看Jon的答案。
答案 2 :(得分:1)
您甚至可以只附加id以_stat结尾的选项:
$('select[id$="_stat"]').change(function() {
//important stuff only for selects id ending in _stat
});