从动态创建的select选项调用时,JQuery Mobile changePage()片状?

我有一个带有简单选择菜单的Jquery Mobile页面。

Choose One... Option 1 Option 2

在事件pageinit ,我使用jQuery来从.remove()选择菜单中的所有内容,然后我动态添加许多选项。 当然,我不会忘记刷新选择菜单。

 function populateHeroNames(){ //populate hero select item $('#heroSelectMenu').empty(); $('#heroSelectMenu').append('Please Choose...'); for(var i=0;i<heroNameLength;i++){ if(heroName[i]){ var currentHeroName = heroName[i]; }else{continue;} $('#heroSelectMenu').append(''+currentHeroName+''); } //refresh hero select item var heroSelectMenu = $("#heroSelectMenu"); heroSelectMenu.selectmenu("refresh"); console.log('heroes added!'); } 

我的问题是我无法成功导航到以编程方式创建的选项的不同页面。 我可以从硬编码选项中做到这一点。 当我点击硬编码选项时,我可以正常使用$.mobile.changePage() 。 但是从编程创建的选项中,我导航到的页面将消失,然后返回到初始页面。

在测试中,当我点击后退按钮时,我实际上是去了我的目的地。 所以很明显JqueryM已经导航到了目的地,但后来出于某种原因又回来了。

我怀疑原因是Jquery Mobile的奇怪DOM加载。 有什么我需要刷新……或者可能防止刷新? 只需导航到页面……并留在那里!