JQuery-UI selectmenu 小部件有一些扩展方法,可用于自定义下拉选择菜单的呈现/样式。 来自 api docs ,可以使用以下widget扩展方法来自定义菜单: - _renderItem( ul, 项目 ) - _renderMenu( ul, items )
我想要实现的是,仅针对 selectmenu 小部件的一个实例覆盖上述扩展方法,而不是在全局级别。 widget factory docs确实有关于扩展小部件的特定实例的示例(示例位于本页底部),但尚未成功地将其应用于 selectmenu 扩展方法。 非常感谢对此问题的任何见解。
最佳答案
而不是使用 .data('ui-selectmenu')
来访问该对象(如 @kashif_shamaz 的答案中所建议的),API provides the instance()
method暴露对象。好处是,与通过 data()
方法进行基于字符串的访问相比,此方法是 API 的一部分,因此在未来潜在的更改期间应该更稳定且有更好的文档记录。
使用如下:
$('#select-menu-id').selectmenu('instance')._renderItem = function(event, ui) {
// override with custom logic for rendering each select option
}
关于jquery-ui - 如何使用 jquery-ui selectmenu 扩展方法(_renderItem、_renderMenu 等),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26773621/