简体   繁体   English

javascript复选框启用/禁用

[英]javascript checkbox enable/disable

Ok this is very anoying, and it is probably very simple. 好的,这很烦人,而且可能非常简单。 I want to start my web page with disabled checkboxes, and after particlar line in listbox is selected to enable those boxes. 我想启动带有禁用复选框的网页,并在选中列表框中的细分行后启用这些框。 So I put this in onload method 所以我把它放在onload方法中

onload = function () {
   for (i = 0; i < document.frmMain.checkgroup.length; i++){
        document.frmMain.checkgroup[i].disabled = true ;
   }
}

it start my page with disabled boxes, now i want do enable them 它启动我的页面与禁用框,现在我想要启用它们

function enableCheckboxes(){
    if (document.frmMain.Vrste[document.frmMain.Vrste.selectedIndex].value == "Sendvici i Rostilj"){
        for(i=0;i<document.frmMain.checkgroup.length;i++){
       document.frmMain.checkgroup[i].enabled = true;

        }
    }
}

it goes in to the for loop, but it never enable those checkboxes. 它进入for循环,但它永远不会启用那些复选框。 I cannot figure it why. 我无法理解为什么。

and this is html part, where i call enablecheckbox function: 这是html部分,我调用enablecheckbox函数:

<select name="Vrste" onChange="PopulatePodvrste(); enableCheckboxes();"  size="8">
    <option value="Pica">Pica</option>
    <option value="Barbarina domaca trpeza">Barbarina domaca trpeza</option>
    <option value="Slana Palacinka">Slana Palacinka</option>
    <option value="Slatka Palacinka">Slatka Palacinka</option>
    <option value="Sendvici i Rostilj">Rostilj i sendvici</option>
    <option value="Dobro jutro sa Barbarom">Dobro jutro sa Barbarom</option>
    <option value="Chicken Meni">Chicken Meni</option>
    <option value="Posebna Ponuda">Posebna Ponuda</option>
    <option value="Salate">Salate</option>
</select>

And finally actual checkboxes: 最后是实际的复选框:

<input type="checkbox" name="checkgroup" >Susam</input><br>
<input type="checkbox" name="checkgroup" >Cili</input><br>
<input type="checkbox" name="checkgroup" >Tartar</input><br>
<input type="checkbox" name="checkgroup" >Urnebes</input><br>
<input type="checkbox" name="checkgroup" >Krastavac</input>

尝试改为:

    document.frmMain.checkgroup[i].disabled = false ;

if would add the jquery library to your page then I would add: 如果要将jquery库添加到您的页面,那么我会添加:

$(document).ready(function() {
    $("input[name='checkgroup']").attr("disabled", "disabled");
})

function enableCheckboxes() {
   $("input[name='checkgroup']").removeAttr("disabled");
}

If you don't want to use jquery then just change your enable line to be: 如果您不想使用jquery,那么只需将您的启用行更改为:

document.frmMain.checkgroup[i].disabled = false ;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM