Jquery Mobile 出现长选择多个选项和数据 native 菜单 ="false"的问题

标签 jquery mobile drop-down-menu

我正在使用 jquery 1.9.1 js 和 jquery mobile 1.3.2 css 和 js。

我的页面有一个长选择框,有 20 个项目。 当我打开选择框,选择一些项目并再次关闭它时,我最终得到一个空白页面。

有人遇到过这个问题吗?

jquery mobile 1.3.1 存在第二次打开选择框为空的问题,但这并没有改善。

编辑:

这是我页面上的代码:

<div data-role="page" id="new_agent_edit" data-theme="d" qs="">
    <div data-role="header" data-theme="b">

        <h1>New Agent Edit</h1>
    </div>

    <div id="new_agent_editContent" data-role="content">

          <div>
            <h2 style="display:inline">Agent #Test Agent</h2><br/>
          </div>

          <div>
          <form id="frmAgentNewEdit" name="frmAgentNewEdit">

          <div data-role="fieldcontain">
              <label for="new_agent_editsubscribers" class="select">Publishes To:</label>
              <select name="subscribers" id="new_agent_editsubscribers" data-native-menu="false" multiple="multiple">
                 <option data-placeholder="true">Choose Agents...</option>
                 <option value="1">#1 SMS Message (inactive)</option>
                 <option value="2">#2 Weather Update (inactive)</option>
                 <option value="3">#3 Stock Update (active)</option>
                 <option value="4">#4 Email Notification (inactive)</option>
                 <option value="5">#5 Digest Email (inactive)</option>
                 <option value="6">#6 Word Cloud (inactive)</option>
                 <option value="7">#7 Time Series (active)</option>
                 <option value="8">#8 Google News Sentiment Analysis (active)</option>
                 <option value="9">#9 Google Nieuws (active)</option>
                 <option value="10">#10 Twitter (active)</option>
                 <option value="11">#11 Time Series (inactive)</option>
                 <option value="12">#12 Time Series (inactive)</option>
                 <option value="13">#13 twitterstream: Sentiment Analysis (active)</option>
                 <option value="14">#14 Weather (inactive)</option>
                 <option value="15">#15 Read Email (inactive)</option>
                 <option value="16">#16 Stock (inactive)</option>
                 <option value="17">#17 it-ebooks: Last Update eBooks (inactive)</option>
                 <option value="18">#18 Dilbert (inactive)</option>
                 <option value="19">#19 Marktplaats aanbiedingen (inactive)</option>  
              </select>
          </div>

          </form>
          </div>

    </div>
</div>

这里有 2 个屏幕截图:

Open selectbox Close selectbox

最佳答案

自己解决了

弹出窗口是从具有 pagebeforeshow 事件的页面打开的。 该事件包含页面的初始化代码。 每次关闭弹出窗口时,都会再次触发此事件,从而触发初始化代码,从而导致中断。

通过使初始化代码的执行有条件,我解决了这个问题:

$('#edit_agent').on('pagebeforeshow', function(event, data) {

    if ( data.prevPage.attr('id') !== 'new_agent_editsubscribers-dialog') {

        // initialisation code
        ...
        ...
    }
});

关于Jquery Mobile 出现长选择多个选项和数据 native 菜单 ="false"的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18047301/

相关文章:

javascript - 如何使用 Ajax 刷新或重新加载 div 的内容

javascript - JQuery .text()方法输出乱码文本

javascript - 如何避免在小视口(viewport)上打开litebox?

c# - Windows Mobile 开发 : Choice of .Net compact vs. Native (c++) 代码

html - Bootstrap 按百分比展开菜单/导航栏,如果需要可滚动

javascript - API请求方式

javascript - 哪个 jquery 事件用于自动完成?

css - 移动设备风格

javascript - 通过 JavaScript 设置 SelectBox 值

javascript - 单击其他地方并更改按钮上的 OnClick 样式时如何关闭下拉菜单