[英]Javascript: checkbox onchange/onclick function not working
[英]Onclick of checkbox not working Javascript
我在復選框上啟用了3個文本框,並在取消選中復選框時禁用它們,但不知道為什么代碼不起作用。 默認情況下,使用未選中的復選框禁用它們。
<div class="form-group">
<label class="col-sm-2 control-label" for="input-order-status">
<?php echo "Modify Default Package Dimensions:"; ?>
</label>
<div class="col-sm-10">
<input class="form-control" type="checkbox" name="Modify_Default_Dimensions" value="1" onclick="checkboxChecked(this);">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="input-order-status">
<?php echo "Depth:"; ?>
</label>
<div class="col-sm-10">
<input class="form-control hide_textbox" type="text" id="prod_depth" class="" name="dhl_product_depth" value="12" disabled/> cm
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="input-order-status">
<?php echo "Width:"; ?>
</label>
<div class="col-sm-10">
<input class="form-control hide_textbox" type="text" id="prod_width" name="dhl_product_width" value="34" disabled/> cm
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="input-order-status">
<?php echo "Height:"; ?>
</label>
<div class="col-sm-10">
<input class="form-control hide_textbox" type="text" id="prod_height" name="dhl_product_height" value="123" disabled/> cm
</div>
</div>
function checkboxChecked(clickedBox) {
var textbox_hide = document.getElementsByClassName('hide_textbox');
//alert(textbox_hide.length);
for(var i = 0; i < textbox_hide.length; i++) {
textbox_hide[i].disabled = !clickedBox.checked;
}
}
你的代碼運行正常。 問題是您在文本框input
元素上有兩個class
屬性,因此第二個屬性(包含您要查找的類)被忽略了。
<input class="form-control hide_textbox" type="text" id="prod_width" name="dhl_product_width" value="34" disabled/>
請注意,在上面的示例中, class
屬性有兩個值。
您的小提琴也沒有正確設置,因為JS代碼需要放在文檔的<head />
中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.