【发布时间】:2017-08-21 13:47:37
【问题描述】:
我在表单中有几个checkbox,如果是checked 或unchecked,我将设置每个值。
所以checked 的复选框的值为TRUE 并且未选中为FALSE
如果我选中了所有复选框(值为TRUE)并且我未选中其中一个,则另一个复选框也未选中,并且数据库上的值也变为FALSE。我无法理解下面的行为是我的代码
HTML
<label><input type="checkbox" id="trans_val_identical" value="FALSE">II Transaction Value of Identical Goods</label>
<label><input type="checkbox" id="trans_val_identical" checked="checked" value="FALSE">II Transaction Value of Identical Goods</label>
</div>
<div class="checkbox">
<label><input type="checkbox" id="trans_val_similar" value="FALSE">III Transaction Value of Similar Goods</label>
<label><input type="checkbox" id="trans_val_similar" checked="checked" value="FALSE">III Transaction Value of Similar Goods</label>
</div>
<div class="checkbox">
<label><input type="checkbox" id="deductive_val" value="FALSE">IV Deductive Value</label>
<label><input type="checkbox" id="deductive_val" checked="checked" value="FALSE">IV Deductive Value</label>
</div>
<div class="checkbox">
<label><input type="checkbox" id="computed_val" value="FALSE">V Computed Value</label>
<label><input type="checkbox" id="computed_val" checked="checked" value="FALSE">V Computed Value</label>
</div>
<div class="checkbox">
<label><input type="checkbox" id="fallback_val" value="FALSE">VI Fallback Value</label>
<label><input type="checkbox" id="fallback_val" checked="checked" value="FALSE">VI Fallback Value</label>
JS
$('#trans_val_identical').change(function(){
if($(this).attr('checked')){
$(this).val('TRUE');
}else{
$(this).val('FALSE');
}
});
$('#trans_val_similar').change(function(){
if($(this).attr('checked')){
$(this).val('TRUE');
}else{
$(this).val('FALSE');
}
});
$('#deductive_val').change(function(){
if($(this).attr('checked')){
$(this).val('TRUE');
}else{
$(this).val('FALSE');
}
});
$('#computed_val').change(function(){
if($(this).attr('checked')){
$(this).val('TRUE');
}else{
$(this).val('FALSE');
}
});
$('#fallback_val').change(function(){
if($(this).attr('checked')){
$(this).val('TRUE');
}else{
$(this).val('FALSE');
}
});
【问题讨论】: