每当选中/取消选中任何复选框时,我都需要修改一个字符串,但当其他人向我抛出异常错误时,只有第一个复选框可以完成这项工作: ““#two-stars”.is 不是一个函数”。我尝试了不同的条件,但似乎这段代码的核心出现了问题,我还无法找到。代码:
$('#input:checkbox').change(function(){
starsQueries = '';
if( $('#two-stars').is(':checked') ){
starsQueries += '&stars=401';
console.log('checked!');
}
if( $('#three-stars').is(':checked') ){
if( ('#two-stars').is(':checked') ){
starsQueries += ',402';
} else {
starsQueries += '&stars=402';
}
}
if( $('#four-stars').is(':checked') ){
if( ('#three-stars').is(':checked') || ('#two-stars').is(':checked') ){
starsQueries += ',403';
} else {
starsQueries += '&stars=403';
}
}
if( $('#five-stars').is(':checked') ){
if( ('#four-stars').is(':checked') || ('#three-stars').is(':checked') || ('#two-stars').is(':checked') ){
starsQueries += ',404';
} else {
starsQueries += '&stars=404';
}
}
});
在 JSfiddle 上:https://jsfiddle.net/4mLcz6mt/1/
最佳答案
您已忽略$
前面('#two-stars')
, ('#three-stars')
和('#four-stars')
关于javascript - 嵌套 'if checkbox is checked' 引发错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48686782/