启用"禁用Multiselect"使用jquery / javascript

时间:2014-06-27 03:08:37

标签: javascript jquery select

这是我的代码,如下所示。在页面加载时,所有多选都被禁用,但是一旦用户单击启用按钮,则应启用所有多选。这是我的代码,如下所示。我无法做到这一点,我想知道为什么。但如果我添加" $('#multidiv option').prop('disabled', false);"在第一次加载时,它可以正常工作,但我的所有多选都将在第一次加载时启用。我想在第一次加载时禁用所有内容,但是通过单击按钮启用所有内容。感谢。

<div id="multidiv">    
<label style="float:left; margin-right:-2px;">Target Android Device</label>                                 
    <div class="span5" style="display:inline-block; float:left;">
        <select id="android" disabled="disabled" multiple="multiple" name="android[]">
            <option value="Nexus">Nexus</option>
            <option value="HTC">HTC One</option>
            <option value="Sony">Sony Xperia</option>
        </select>
    </div>
</div>

我的javascript代码如下:

$('#enable_button').on("click",function(){
    $('#multidiv option').prop('disabled', false);
});

$('#android').multiSelect(); //using "http://loudev.com/" plugin

3 个答案:

答案 0 :(得分:2)

我找到了解决问题的方法。 这个$('#multidiv option').removeAttr('disabled');代码实际上有效。这是插件问题。

通过添加$('#android').multiSelect('refresh');,它现在可以正常工作了。在此代码$('#multidiv option').removeAttr('disabled');

之后,需要刷新插件

感谢所有人试图帮助顺便说一句。

答案 1 :(得分:0)

为什么不使用id本身的<select>

$('#enable_button').on("click",function(){
    $('#android option').removeAttr('disabled');
});

答案 2 :(得分:0)

你可以使用这个脚本;

$('#android').multiselect('disable');
and
$("#android").multiselect('enable');

它为 agungpanduan.com 所做的工作