【问题标题】:jQuery Mobile Pagebeforeshow and longlist selectmenujQuery Mobile Pagebeforeshow 和长列表选择菜单
【发布时间】:2015-03-05 06:09:41
【问题描述】:

我使用 JQuery 移动版 1.0.1。

我用下面的代码创建了一个页面

<div data-role="page" id="homecomments">
   <div data-role="header">
      <h1>Comments</h1>
      <a href='#home' class='ui-btn-left' data-icon='home' data-theme="a" data-iconpos="notext">Home</a>
   </div>
   <div data-role="content">
      <select name="building" id="opt1" data-native-menu="false">
         <option>building</option>
      </select>
   </div>
</div>

我用

调用页面
$('#homecomments').live('pagebeforeshow', function() {
   getTitlesComments()
});

$( document ).delegate("#homecomments", "pagecreate", function() {
   $("#opt1").change( function() {
   if ($( "#opt1 option:selected" ).val() != 0) {
      ====================DO SOMETHING=======================
   }
});

function getTitlesComments() {
   $('#opt1').val('');
   $("#opt1").selectmenu('refresh');
   ==========dynimicaly create longlist selectmenu opt1========
}

我必须在选择菜单中使用很长的列表。每次我从长列表中进行选择时,选择菜单都会重置。

我该如何解决这个问题?

【问题讨论】:

    标签: javascript jquery jquery-mobile select-menu


    【解决方案1】:

    长列表选择正在“隐藏”页面,因此当您在选择后返回时,它再次“显示”它。好消息是它仍在保留您的选择。您可以在您的 pagebeforeshow 代码中检查它们是否存在,并在您的代码再次创建选项列表时选择这些值。

    $("#opt1").selectedValues().join(",");
    

    会给你一个逗号分隔的列表来处理。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-22
      • 1970-01-01
      • 2013-07-12
      相关资源
      最近更新 更多