Jquery 多个复选框 if 语句
Jquery multiple checkbox if statements
我有一个html文件,其中包含一个表单,jquery和javascript。当我单击复选框时,我希望表单背景变大。我有 3 个复选框,所以
当检查 nr.1 而选中 nr.2 和 nr.3 时,我希望 form-bg 高度为 1500px,
当检查 nr.1 和 nr.2 并且 nr.3 不是我希望它是 2000px 高度时
和 nr.1、nr.2 和 nr.3 检查 2500px;
但是当检查 nr.2 和 nr.3 时,我也希望它是 2000px。
我创建了这个用于在全部检查时进行测试,但它不起作用:
$(document).ready(function() {
if (($(".check_aan").is(':checked')) || ($(".check_ver").is(':checked')) || ($(".check_toe").is(':checked'))) {
$(".form-bg").css("height", "2500px");
} else {
$(".form-bg").css("height", "4000px");
}
});
.check_aan、.check_ver和.check_toe是复选框。
我也尝试了"&&","和"
谢谢。
如果我正确回答了您的问题,那么我所理解的内容如下:
- 当
checked
任一复选框时,则 -:height: 1500px
。 - 当
checked
任何两个复选框时,则 -:height: 2000px
. - 当所有三个复选框都
checked
时,则 -:height: 2500px
. - 当没有任何复选框
checked
则不定义 -:height
。
基于此,请参阅我创建的演示(仅逻辑)。
请在下面找到代码:
.HTML:
<div>
<label>
<input type="checkbox" class="check1" /> Checkbox 1
</label>
<label>
<input type="checkbox" class="check2" /> Checkbox 2
</label>
<label>
<input type="checkbox" class="check3" /> Checkbox 3
</label>
</div>
<p>
</p>
.JS:
$(function() {
$('input[type="checkbox"]').on('change', function() {
var isCheck1Checked = $('.check1').prop('checked');
var isCheck2Checked = $('.check2').prop('checked');
var isCheck3Checked = $('.check3').prop('checked');
var text;
if (!isCheck1Checked && !isCheck2Checked && !isCheck3Checked) {
text = '';
} else if (isCheck1Checked && isCheck2Checked && isCheck3Checked) {
text = "The height is 2500px";
} else if ((isCheck1Checked && isCheck2Checked) || (isCheck2Checked && isCheck3Checked) || (isCheck1Checked && isCheck3Checked) && !(isCheck1Checked && isCheck2Checked && isCheck3Checked)) {
text = "The height is 2000px";
} else {
text = "The height is 1500px";
}
$('p').text(text);
});
});
更新:根据要求
我修改了代码,它在每个checkbox
的check
上运行良好,当checked
一个、两个和三个checkboxes
时,它会增加某个值,但递减。
请参阅此处的演示。
代码如下:
.HTML:
<div>
<label>
<input type="checkbox" class="check1" /> Checkbox 1
</label>
<label>
<input type="checkbox" class="check2" /> Checkbox 2
</label>
<label>
<input type="checkbox" class="check3" /> Checkbox 3
</label>
</div>
<br />
<div class="target"></div>
.JS:
$(function() {
$('input[type="checkbox"]').on('change', function() {
var isCheck1Checked = $('.check1').prop('checked');
var isCheck2Checked = $('.check2').prop('checked');
var isCheck3Checked = $('.check3').prop('checked');
var text, c = 0;
if (!isCheck1Checked && !isCheck2Checked && !isCheck3Checked) {
text = '';
} else if (isCheck1Checked && isCheck2Checked && isCheck3Checked) {
text = "The height is 2500px";
c = 300;
} else if ((isCheck1Checked && isCheck2Checked) || (isCheck2Checked && isCheck3Checked) || (isCheck1Checked && isCheck3Checked) && !( isCheck1Checked && isCheck2Checked && isCheck3Checked)) {
text = "The height is 2000px";
c = 200;
} else {
text = "The height is 1500px";
c = 50;
}
var oldHeight = parseInt($('.target').css('height'));
$('.target').css('height', oldHeight + c + 'px');
});
});
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 如何在 API 调用后和 if 语句中启用提交按钮
- 带有多个elseif的Javascript if语句
- Sharepoint JScript if语句未执行
- for循环中的javascript if语句找不到==
- jquery if语句返回return wong语句
- 在if语句下的html中使用javascript变量
- 将错误与if语句混淆
- 循环通过数组的If语句不起作用
- jQuery模板中的If语句
- 如何从数据库中回显If语句
- 如何减少if语句的数量
- 在Javascript中将一个值和字符串数组转换为if语句
- Dropbox oauth认证的IF语句的第二部分是't已触发
- MVC Jquery-按钮点击-获取if语句错误
- 如何重写Javascript If语句以选择Classes而不是ID's的HTML格式
- KnockoutJS:为虚拟元素使用嵌套的条件if语句
- If语句发布或操作员发布
- 清除函数中if语句内部不起作用的间隔
- 使用if语句重新循环