2017-01-30 1199 views
1

我使用bootstrap-switch并具有不同的按钮。 GIVS的变化,我可以给其他属性这样的样本参数:bootstrap-switch:禁用/启用更改上的其他选项

<input type="checkbox" name="values[{$optionName}]" value="1" data-to-enable="values[optionName1],values[optionName5],values[optionName50],values[optionName100],values[optionName333]" /> 

我想,这个选项是选中禁用(或当它是在页面加载选中),并启用(或当它检查在检查

+0

你能否提供更多的HTML t?加上你已经尝试过的JavaScript代码?并准确描述你想要什么,现在很难说清楚 –

回答

1

下面是JavaScript代码的网页加载)你想:

$(function() { 

    var toggleSwitch = function(ev) { 
     var _this = $(ev.currentTarget); 
     var toChange = _this.data("to-enable").split(","); 
     var state = _this.bootstrapSwitch("state"); 

     $("input.switch").each(function(el, index) { 
      if($.inArray($(this).prop("name"), toChange) >= 0) { 
       $(this).bootstrapSwitch("disabled", state); 
      } 
     }); 
    }  

    $("input").bootstrapSwitch(); 
    $("input[id^='switchHandler']").each(function(){ 
     $(this).bootstrapSwitch("state", $(this).data("checked")); 
     $(this).on("switchChange.bootstrapSwitch", toggleSwitch); 
     $(this).trigger("switchChange.bootstrapSwitch"); 
    }); 

}); 

这里是你婉什么工作jsfiddle

+0

这很棒。谢谢。我已经改变它:$(“[id^= switchHandler]”)。on(“switchChange.bootstrapSwitch”,function(){我可以做出不同的switchHandler。很好,给出一个改变,脚本禁用/启用按钮,而不是选中/取消选中? – Koda

+0

问:你太棒了,谢谢。如果检查或取消选中启用/禁用从数据到启用的交换机,请检查页面上的id =“switchHandler” ?此时,当我在页面加载时检查switchHandler时,选项数据启用是错误的方式 – Koda

+0

@Koda再次更新现在当页面加载时,交换机基于'$(“ #toggleSwitch“)'如果你想反转这种行为,只需否定'state'变量(通过这样做:'!_this.bootstrapSwitch(”state“)') –