我有一个关于jQuery选择器的noob问题。我想在点击后包装一个元素,但前提是它有一个特定的类名(“。js-loader”),并且只有它是输入[type“submit”]或输入[type =“button”] ],或者如果它有一个类名“.form-button”......
var selector = '.js-loader';
$(selector).on('click', function() {
if( $(this).is(???) ) {
console.log('Its a submit button or something like that, so its ok.');
}
else {
console.log('You shall not pass.')
}
});
问题是,我是javascript和jQuery的真正新手,我只是不知道如何正确地做到这一点。
感谢您的帮助,对不起我的英语:)
修改: 我想把那些选择器放在另一个变量中,稍后我会需要它们。
答案 0 :(得分:2)
向is()函数传递要针对其
测试元素的选择器$(selector).on('click', function() {
if( $(this).is('input[type="submit"], input[type="button"]') ) {
console.log('Its a submit button or something like that, so its ok.');
}
else {
console.log('You shall not pass.')
}
});
答案 1 :(得分:0)
试试这个:
$(selector).on('click', function() {
if( $(this).is('input[type="submit"], input[type="button"], a, .form-button') ) {
console.log('Its a submit button or something like that, so its ok.');
}
else {
console.log('You shall not pass.')
}
});
答案 2 :(得分:0)
试试这个:
$(selector).on('click', function() {
if( $(this).is('input :submit, input :button, a.form-button') ) {
console.log('Its a submit button or something like that, so its ok.');
}
else {
console.log('You shall not pass.');
}
});
答案 3 :(得分:0)
试试这个:
var selector = '.js-loader';
$(selector).on('click', function() {
if( $(this).is('input[type"submit"], input[type="button"],.form-button') ) {
console.log('Its a submit button or something like that, so its ok.');
}
else {
console.log('You shall not pass.')
}
});
答案 4 :(得分:0)
试试这个:
$(selector).click(function() {
if( $(this).is("input[type=button], input[type=button], a") || $(this).className == 'form-button' ) {
console.log('Its a submit button or something like that, so its ok.');
}
else {
console.log('You shall not pass.')
}
});