Javascript 如何在pagebeforeshow创建jquery移动选择菜单?
我在Jquery Mobile中使用dataTables。我的数据表在pageBeforeShow上启动。在init回调函数中,我构造了一个JQM选择菜单。此菜单未正确增强=按钮在那里,但未创建自定义选择 那是我的问题 以下是缩短的代码:Javascript 如何在pagebeforeshow创建jquery移动选择菜单?,javascript,jquery,events,select,jquery-mobile,Javascript,Jquery,Events,Select,Jquery Mobile,我在Jquery Mobile中使用dataTables。我的数据表在pageBeforeShow上启动。在init回调函数中,我构造了一个JQM选择菜单。此菜单未正确增强=按钮在那里,但未创建自定义选择 那是我的问题 以下是缩短的代码: $('div:jqmData(role="page")').live('pagebeforeshow', function(e, data) { /** init datatables **/ $('.tbl_orders').dataTa
$('div:jqmData(role="page")').live('pagebeforeshow', function(e, data) {
/** init datatables **/
$('.tbl_orders').dataTable( {
/* callback */
"fnInitComplete": function(oSettings, json) {
var thead = $(oSettings.nTHead),
bodyRows = $(oSettings.nTBody).find("tr, TR"),
hdrCols = thead.find( /* all header columns */ );
/* create select */
tableSelectMenu = $('<select name="toggleCols" id="toggleCols" multiple="multiple" data-icon="setup" data-iconpos="notext"></select>')
/* loop through header cols add options */
hdrCols.each(function(i){
var toggle = $('<option value="'+id+'">'+th.text()+'</option>');
tableSelectMenu.append(toggle);
}); // end hdrCols loop
$('.stickSelectHere').append(tableSelectMenu)
}
});
$('div:jqmData(role=“page”)).live('pagebeforeshow',函数(e,数据){
/**初始化数据表**/
$('.tbl_orders')。数据表({
/*回拨*/
“fnInitComplete”:函数(oSettings,json){
var thead=$(oSettings.nTHead),
bodyRows=$(oSettings.nTBody).find(“tr,tr”),
hdrCols=thead.find(/*所有标题列*/);
/*创建选择*/
tableSelectMenu=$('')
/*循环通过标题栏添加选项*/
hdrCols.each(函数(i){
var toggle=$(''+th.text()+'');
tableSelectMenu.append(切换);
});//结束hdrCols循环
$('.stickSelectHere').append(表选择菜单)
}
});
如果我这样做,选择按钮就在那里,但没有做任何事情,因为缺少自定义选择菜单
我尝试在前面的页面BeforeCreate上创建select,因为我在这里检查触摸设备并分配数据native menu=“true/false”。但是将select放在那里也没有任何好处,可能是因为我只是创建了它,直到我的tableInit…mh才将其放入DOM
问题:有人能告诉我如何在pagebeforeshow上创建带有自定义菜单的选择吗
谢谢您的帮助!您可能只需要在追加后添加以下内容,即
$('.stickSelectHere').append(tableSelectMenu)
$('#toggleCols').selectmenu('refresh');
您可能只需要在追加之后添加以下内容,即
$('.stickSelectHere').append(tableSelectMenu)
$('#toggleCols').selectmenu('refresh');
:-)我也发现了。谢谢!虽然我在js文件的开头插入了select,所以它在DOM中。然后我可以添加数据本机菜单=true/false,添加选项,刷新并将其移动到最终目的地。:-)我也发现了。谢谢!虽然我在js文件的开头插入select,所以它在DOM中。然后我可以添加数据native menu=true/false、添加选项、刷新并将其移动到最终目的地。