如何根据是否选中复选框来更改变量
How to change variable based on checkbox being checked or not?
我有一个这样的复选框。。。
<input type="checkbox" id="something" name="something" value="25" data-val="25" checked="checked" class="option">
<label for="something">Something</label>
我想要javascript/jquery代码,每次选中或取消选中复选框时,它都会查看是否已选中,如果已选中,则赋值25,如果未选中,则赋0。然而,当我通过检查/取消检查进行测试时,它只是不断地吐出25。为什么我取消选中时它不更改为0?你知道我做错了什么吗?
$( document ).ready(function() {
$('.option').on('change', function() {
if ($('#something').attr('checked')) {
var something = 25;
} else {
var something = 0;
}
console.log(something);
});
});
.attr()方法返回string
"checked"-复选框的初始状态,该状态不变
它将始终被评估为true
,并且if condition
将始终运行。
为了检索和更改DOM属性,或表单元素的禁用状态,请使用.pr()方法。
因此,使用.prp()可以获得true/false
值:
$('.option').on('change', function() {
var something;
if ($(this).prop('checked')) {
something=25;
}
else {
something = 0;
}
console.log(something);
});
或者,如果使用返回boolean
的.is()方法检查checkbox
,则可以检查。
$('.option').on('change', function() {
var something;
if ($(this).is(':checked')) {
something=25;
} else {
something = 0;
}
console.log(something);
});
相关文章:
- IF 语句不改变变量的结果
- 为什么不是'这个CanvasJS脚本动态地改变变量
- 在php中改变变量,但在javascript中相同的变量不变
- 为什么Javascript不使用onChange来改变变量?
- 添加一个DOM/SVG元素与d3 javascript库改变变量引用/范围,为什么
- 通过点击按钮改变变量的值
- 在按下键后改变变量
- JQuery改变变量/成本后点击
- Eventlistener点击不改变变量时按下
- 改变变量中的链接
- 不能让函数改变变量
- Javascript滑块动态改变变量
- 通过html按钮改变变量
- Jquery在点击时改变变量
- 不能改变变量
- 为什么我的精灵在不改变变量的情况下加速
- 在javascript的文字函数中改变变量的值
- jQuery用子元素改变变量
- 改变变量&设置日期反应原生
- Ajax文件检查成功后不改变变量