jquery-ui:如何在selectmenu项(选项)中设置class名称?
jquery-ui: how to set the class name in the selectmenu item (option)?
我有一个 <select>
表单,其中为一个选项设置了唯一 class:
<select id='mylist'>
<option value = '1'>One</option>
<option value = '2' class='my_element'>Two</option>
</select>
当我连接时selectmenu
$('#mylist').selectmenu();
Class in new 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-ui .selectmenu()
中,我们可以指定额外的 类 添加到小部件的元素。
您可以在他们的 documentation here.
中找到代码示例
希望对您有所帮助。
你可以覆盖_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>
我有一个 <select>
表单,其中为一个选项设置了唯一 class:
<select id='mylist'>
<option value = '1'>One</option>
<option value = '2' class='my_element'>Two</option>
</select>
当我连接时selectmenu
$('#mylist').selectmenu();
Class in new 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-ui .selectmenu()
中,我们可以指定额外的 类 添加到小部件的元素。
您可以在他们的 documentation here.
中找到代码示例希望对您有所帮助。
你可以覆盖_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>