![](/img/trans.png)
[英]iCheck Enable/Disable Input-File(bootstrap) Button when i check a checkbox
[英]How to enable the input in checkbox if i check the checkbox? cuz it always disable when i check the checkbox with input type
如果我選中復選框,如何啟用復選框中的輸入?
當我選中帶有輸入類型的復選框時,它總是禁用。
function ckChange(ckType) { var ckName = document.getElementsByName(ckType.name); var checked = document.getElementById(ckType.id); if (checked.checked) { for (var i = 0; i < ckName.length; i++) { if (!ckName[i].checked) { ckName[i].disabled = true; } else { ckName[i].disabled = false; } } } else { for (var i = 0; i < ckName.length; i++) { ckName[i].disabled = false; } } }
<input type="checkbox" placeholder="toBeReturn" name="progress" id="progress1" value="1" tabIndex="1" onClick="ckChange(this)"> For use in showroom to be return on <input type="date" name="progress" id="progress3" placeholder="date"> <br/> <input type="checkbox" placeholder="OnLoan" name="progress" id="progress2" value="1" tabIndex="1" onClick="ckChange(this)"> On Loan <br/> <input type="checkbox" placeholder="Other" name="progress" id="progress6" value="1" tabIndex="1" onClick="ckChange(this)"> Other <input type="text" name="progress" id="progress3" placeholder="State the Purpose">
我需要幫助來完成我的項目,謝謝!
只需切換“ if”和“ else”語句中的內容,就可以實現相反的效果。
另外,如果您在未選中復選框的情況下加載頁面,則還應在文本輸入中添加“已禁用”,以使其匹配。
function ckChange(ckType) { var ckName = document.getElementsByName(ckType.name); var checked = document.getElementById(ckType.id); if (checked.checked) { for (var i = 0; i < ckName.length; i++) { ckName[i].disabled = false; } } else { for (var i = 0; i < ckName.length; i++) { if (!ckName[i].checked) { ckName[i].disabled = true; } else { ckName[i].disabled = false; } } } }
<th> <input type="checkbox" placeholder="toBeReturn" name="progress" id="progress3" value="1" tabIndex="1" onClick="ckChange(this)"> For use in showroom to be return on <input type="date" name="progress" id="progress3" placeholder="date" disabled> </th>
我認為問題在於您的“ for”語句,“ for”語句匹配所有復選框,包括您從那時開始就需要排除的復選框,因此您可以這樣嘗試:
function ckChange(ckType) {
var ckName = document.getElementsByName(ckType.name);
var checked = document.getElementById(ckType.id);
if (checked.checked) {
for (var i = 0; i < ckName.length; i++) {
if(ckName[id].id !==checked.id){
ckName[i].disabled = false;
}
}
} else {
for (var i = 0; i < ckName.length; i++) {
if(ckName[id].id !==checked.id){
if (!ckName[i].checked) {
ckName[i].disabled = true;
} else {
ckName[i].disabled = false;
}
}
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.