使用java脚本后无法取消选中复选框

时间:2015-12-26 07:27:57

标签: javascript html

<script type="text/javascript">
    function enableDisable(textBoxID,checkboxID) {
        if(document.getElementById(checkboxID).checked= true) {
            document.getElementById(textBoxID).style.display = 'block';
            return true;
        } else {
            document.getElementById(textBoxID).style.display = 'none';
            return true;
        }   
    }
</script>

legacy<input type="checkbox" class="igm_class" id="legacy_cb" name="igm_2" value="legacy" onchange="enableDisable('legacytb','legacy_cb')">

此代码工作正常。选中该复选框后,将显示文本框,但我无法取消选中该复选框..复选框仍保持选中状态

2 个答案:

答案 0 :(得分:4)

因为在if条件中使用了单个等式。在js中,检查值时使用三重方程通常是个好主意:

if(document.getElementById(checkboxID).checked === true) {

或者甚至更好地保留这样的方程式:

if(document.getElementById(checkboxID).checked) {

答案 1 :(得分:-1)

将“if(document.getElementById(checkboxID).checked = true)”替换为“if(document.getElementById(checkboxID).checked === true)”

function enableDisable(textBoxID, checkboxID) {
    if (document.getElementById(checkboxID).checked === true) {
        document.getElementById(textBoxID).style.display = 'block';
        return true;
    }

    else {
        document.getElementById(textBoxID).style.display = 'none';
        return true;
    }
}