我在表单中有一个复选框,我希望它能按照以下场景工作:
如果有人检查它,文本字段(totalCost)的值应该设置为10。 然后,如果我返回并取消选中它,函数calculate()将根据表单中的其他参数设置totalCost的值。
基本上,我需要这样的部分,当我选中复选框时,我做一件事,当我不选中它时,我做另一件事。
我在表单中有一个复选框,我希望它能按照以下场景工作:
如果有人检查它,文本字段(totalCost)的值应该设置为10。 然后,如果我返回并取消选中它,函数calculate()将根据表单中的其他参数设置totalCost的值。
基本上,我需要这样的部分,当我选中复选框时,我做一件事,当我不选中它时,我做另一件事。
当前回答
引用复选框的id,而不是# 将函数分配给onclick属性,而不是使用change属性
var checkbox = $("save_" + fieldName);
checkbox.onclick = function(event) {
var checkbox = event.target;
if (checkbox.checked) {
//Checkbox has been checked
} else {
//Checkbox has been unchecked
}
};
其他回答
如果你正在使用jQuery..那么我可以提出以下建议: 注意:我在这里做了一些假设
$('#my_checkbox').click(function(){
if($(this).is(':checked')){
$('input[name="totalCost"]').val(10);
} else {
calculate();
}
});
function calc()
{
if (document.getElementById('xxx').checked)
{
document.getElementById('totalCost').value = 10;
} else {
calculate();
}
}
HTML
<input type="checkbox" id="xxx" name="xxx" onclick="calc();"/>
下面的解决方案使用jquery。让我们假设您有一个id为checkboxId的复选框。
const checkbox = $("#checkboxId");
checkbox.change(function(event) {
var checkbox = event.target;
if (checkbox.checked) {
//Checkbox has been checked
} else {
//Checkbox has been unchecked
}
});
Javascript
// on toggle method
// to check status of checkbox
function onToggle() {
// check if checkbox is checked
if (document.querySelector('#my-checkbox').checked) {
// if checked
console.log('checked');
} else {
// if unchecked
console.log('unchecked');
}
}
HTML
<input id=“my-checkbox” type=“checkbox” onclick=“onToggle()”>
引用复选框的id,而不是# 将函数分配给onclick属性,而不是使用change属性
var checkbox = $("save_" + fieldName);
checkbox.onclick = function(event) {
var checkbox = event.target;
if (checkbox.checked) {
//Checkbox has been checked
} else {
//Checkbox has been unchecked
}
};