【问题标题】:jquery-ui: how to set the class name in the selectmenu item (option)?jquery-ui:如何在选择菜单项(选项)中设置类名?
【发布时间】:2018-03-22 12:47:35
【问题描述】:

我有一个<select> 表单,其中为一个选项设置了一个唯一的类:

<select id='mylist'>
    <option value = '1'>One</option>
    <option value = '2' class='my_element'>Two</option>
</select>

当我连接selectmenu

$('#mylist').selectmenu();

selectmenu 对象中的类消失(不出现)

<li class="ui-menu-item"><div id="ui-id-3" tabindex="-1" role="option" class="ui-menu-item-wrapper">Two</div></li>

如何解决?我想要

<li class="ui-menu-item"><div id="ui-id-3" tabindex="-1" role="option" class="ui-menu-item-wrapper my_element">Two</div></li>

<li class="ui-menu-item my_element"><div id="ui-id-3" tabindex="-1" role="option" class="ui-menu-item-wrapper">Two</div></li>

【问题讨论】:

    标签: jquery css jquery-ui option jquery-ui-selectmenu


    【解决方案1】:

    你可以覆盖_renderMenu():

    $('#mylist').selectmenu().data("ui-selectmenu")._renderMenu = function(ul, items) {
        var that = this;
        items.forEach(function(ele, idx) {
            var li = that._renderItemData(ul, ele);
            if (ele.element.get(0).classList.length>0) {
                // preserve original classes...
                li.addClass(ele.element.get(0).classList.value);
            }
        });
    };
    .my_element {
        background-color: red;
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <link href="https://code.jquery.com/ui/1.12.0/themes/smoothness/jquery-ui.css" rel="stylesheet"/>
    <script src="https://code.jquery.com/ui/1.12.0/jquery-ui.js"></script>
    
    <select id='mylist'>
        <option value='1'>One</option>
        <option value='2' class='my_element'>Two</option>
    </select>

    【讨论】:

      【解决方案2】:

      在 jquery-ui .selectmenu() 中,我们可以指定其他类以添加到小部件的元素中。

      你可以在他们的documentation here.找到代码示例

      希望这会有所帮助。

      【讨论】:

      • 不起作用 :( 检查了所有原生 jquery-ui 类类:{ "ui-selectmenu-button-closed": "my_element", "ui-selectmenu-button": "my_element", "ui -selectmenu-text”:“my_element”、“ui-selectmenu-icon”:“my_element”、“ui-selectmenu-menu”:“my_element”、“ui-selectmenu-open”:“my_element”、“ui-selectmenu” -optgroup": "my_element", "ui-menu-item": "my_element", },
      猜你喜欢
      • 2011-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多