【问题标题】:How to enable and disable selectmenu JQuery mobile如何启用和禁用选择菜单 JQuery 移动
【发布时间】:2013-10-12 03:14:23
【问题描述】:

我有一个使用 jquery mobile 生成的表单。我有一个最初设置为禁用的下拉列表。

<div data-role="fieldcontain">
    <label for="role-edit" class="select">Project Role:</label>
    <select name="role-edit" id="role-edit" data-native-menu="false" disabled="disabled" class="edit-projectinput">     
        <option value="Admin">Admin</option>
        <option value="Project Manager">Project Manager</option>
        <option value="User">User</option>
    </select>
</div>

我想使用 jquery 启用禁用的选择菜单。 我试过了

$(".edit-projectinput").selectmenu("enable");

但这对我不起作用。

您能否指导我如何启用禁用的选择菜单,如果可能,请告诉我如何禁用。

这是演示:http://jsfiddle.net/lightbringer/dpv2h/1/

【问题讨论】:

    标签: javascript jquery jquery-mobile


    【解决方案1】:

    只要做:

    $(document).ready(function(){
         $("select.edit-projectinput").selectmenu("enable");
    });
    

    Demo

    请记住,.edit-projectinput 类将有 2 个项目,一个是转换为选择菜单小部件的真正选择,然后是小部件中一个默认选择的跨度元素,因此只需专门选择重要的一个。您的菜单已经初始化,只需调用它的 enable 方法即可。

    【讨论】:

    • 非常感谢,我没有注意到jquery会生成另一个具有相同类的项目。
    【解决方案2】:

    你必须先初始化选择菜单,

    $(".edit-projectinput").selectmenu().selectmenu("enable");
    

    并且还为选择选项使用唯一的类名。

    【讨论】:

      【解决方案3】:

      我知道这是一篇较旧的帖子,但在我的代码中遇到了同样的问题并发现了问题,所以在这里发布给其他人。我在网上看到的所有东西都说要使用:

      $("selectId").selectmenu("disable");
      

      没有用。没有错误,只是没有禁用菜单。 解决方法是在 ID 前加上一个简单的 #:

      $("#selectId").selectmenu("disable");
      

      现在它禁用了,没问题:)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-07-08
        • 2020-10-18
        • 2021-09-29
        • 2020-08-30
        • 2013-06-13
        • 2012-12-07
        • 2015-01-14
        • 1970-01-01
        相关资源
        最近更新 更多