我在jQuery移动选择和动态数据方面遇到了很多问题。我想要一个我可以启用和禁用并动态填充的选择。
<select id="selectMobileMenu" onchange="functionMobile()" style="width: 100%" class="mobileSelect"></select>
问题是,当我第一次禁用按钮以防止错误时:Uncaught Error: cannot call methods on selectmenu prior to initialization; attempted to call method 'refresh'
我在select中获得了2个嵌套选择。
selectMobile = $('[id=*selectMobileMenu]');
//Ensure the candidateListBox is defined
if (selectMobile.data("mobile-selectmenu") === undefined) {
// not initialized yet, lets do so
selectMobile.selectmenu('refresh'); //<--- Creates nested select
}
selectMobile.selectmenu(); //<--- Creates nested select
selectMobile.selectmenu('disable');
似乎每当我致电selectmenu()
或selectmenu('refresh')
时,我都会收到嵌套选择,这是有问题的,因为我需要调用selectmenu()
和selectmenu('refresh')
。我可以尝试删除所有的'ui-disable`类(它们适用于某些控制器,但不适用于其他控制器),但我觉得这样会使一个令人难以置信的脆弱控制更加如此。
想法?
答案 0 :(得分:0)
这最终为我工作:
selectMobile = $('select#selectMobileMenu');
if (selectMobile.data("mobile-selectmenu") === undefined) {
selectMobile.selectmenu('refresh');
}
selectMobile.selectmenu();
selectMobile.selectmenu('disable');