我是Javascript和Jquery的新手,所以我遇到了问题。
这是一个代码,用于检查是否选中了三个复选框,最后 - 条件 - 如果检查了所有这三个复选框,则显示一个html元素。
$('input[class^="class"]').click(function() { var $this = $(this);
if ($this.is(".class1")) {
if ($this.is(":checked")) {
$(".class1").not($this).prop({ disabled: true, checked: false });
$(".class").prop("checked", true);
setTimeout(function() { $('#2').click(); }, 1000); //oncheck moves to the next question
var questionOne = 1;
} else {
$(".class1").prop("disabled", false);
}
}
if($this.is(".class2")) {
if ($this.is(":checked")) {
$(".class2").not($this).prop({ disabled: true, checked: false });
$(".class").prop("checked", true);
setTimeout(function() { $('#3').click(); }, 1000);
var questionTwo = 1;
} else {
$(".class2").prop("disabled", false);
}
}
if($this.is(".class3")) {
if ($this.is(":checked")) {
$(".class3").not($this).prop({ disabled: true, checked: false });
$(".class").prop("checked", true);
setTimeout(function() { $('#4').click(); }, 1000);
var questionThree = 1;
} else {
$(".class3").prop("disabled", false);
}
}
if(questionOne = 1 && questionTwo = 1 && questionThree = 1) { alert("alert on Page load"); }
});
我猜问题是设置变量还是最后一个条件。
提前致谢! 最好的祝福, 乔尼
答案 0 :(得分:1)
将您的上一次条件检查更改为:
if(questionOne === 1 && questionTwo === 1 && questionThree === 1) {
alert("alert on Page load");
}
的javascript中获得有关比较的基本知识
答案 1 :(得分:1)
兄弟,你的意思是这样吗?。
HTML:
<input type="checkbox" name="get" class="check1">
<input type="checkbox" name="get2" class="check2">
<input type="checkbox" name="get3" class="check3">
Jquery的:
$(document).ready(function(){
var checkAndShow = function (){
return ($('.check1').is(':checked')&&$('.check2').is(':checked')&&$('.check3').is(':checked'));
}
$('.check1,.check2,.check3').on('change', function(e){
if(checkAndShow()){
//show your div here
}
else{
//hide your div here
}
});
});