2011-07-27 53 views
0

嗨我有以下代码来检查复选框,当用户按下任何键。但是我的要求是当用户删除他在文本框中输入的文本时取消选中该复选框。请建议我如何做到这一点?如何在用户删除文本框中的文本时取消选中checbox?

<input type="text" id="search" name="mysearch" 
onkeypress="enableCheckBox('search')"/> 
<input type="checkBox" id="search_cb" 
name="search_cb"/> 

function enableCheckBox(id) { 
     var myCheckbox = document.getElementById(id + "_cb"); 
     if(!myCheckbox.checked) { 
      myCheckbox.checked = true; 
     } 
    } 

回答

0
function enableCheckBox(id) { 
    var myCheckbox = document.getElementById(id + "_cb"); 
    if(!myCheckbox.checked && document.getElementById(id).value) { 
     myCheckbox.checked = true; 
    }else 
     myCheckbox.checked = false; 
} 

你可能想,因为它要检查自己,如果事情键入重命名功能为好,但取消选中如果输入是空的。

0

您可能会尝试更改您的处理程序以检查文本输入是否包含任何文本。

function enableCheckBox(id) { 
    var hasText = document.getElementById(id).value.length > 0; 
    document.getElementById(id + "_cb").checked = hasText; 
} 
相关问题