【问题标题】:jQuery mobile listview doesn't workjQuery 移动列表视图不起作用
【发布时间】:2014-08-02 16:10:17
【问题描述】:

我正在为 Android 开发一个 phonegap 应用程序。 当然,我使用 jQuery mobile。此刻,我制作了一个带有 3 个选项卡的导航栏, 当我更改选项卡时,内容会更改而无需重新加载导航栏。我用 一个单独的 javascript 来更改内容。

但是现在我正在开发一个列表视图,就像你在 jQuery 移动演示中看到的那样。 问题是这行不通。你看不到“像列表项这样的应用程序”, 但是你会看到一个带有 listitemname 的点,一个没有任何 css 的 html listitem。

列表视图在“page_zoek_category”中,里面有一个“content_zoek_category”,在里面你可以找到列表视图“list_category”

我的html脚本:

<div data-role="page" id="page_main">
  <div data-role="navbar">
      <ul>
          <li><a id="tab_home" href="#" class="ui-btn-active">Home</a></li>
          <li><a id="tab_zoek" href="#" >Zoek</a></li>
          <li><a id="tab_scan" href="#" >Scan</a></li>
      </ul>
  </div>

  <div data-role="content" id="content_main">
  </div>
</div>

<div data-role="page" id="page_home">
  <div data-role="content" id="content_home">
    home
  </div>
</div>

<div data-role="page" id="page_zoek_category">
  <div data-role="content" id="content_zoek_category">
      <ul data-role="listview" id="list_category" data-inset="true">
          <li><a href="#">Acura</a></li>
      </ul>
  </div>
</div>

<div data-role="page" id="page_zoek_detail">
  <div data-role="content" id="content_zoek_detail">
      zoek_detail
  </div>
</div>

<div data-role="page" id="page_scan">
  <div data-role="content" id="content_scan">
      scan
  </div>
</div>

这是我的 javascript 文件

$( document ).ready(function() {
    $('#content_main').html($('#content_home').html());

    $("#tab_home").click(function () {
        $('#content_main').html($('#content_home').html());
    });

    $("#tab_zoek").click(function () {
        $('#content_main').html($('#content_zoek_category').html());
    });

    $("#tab_scan").click(function () {
        $('#content_main').html($('#content_scan').html());
    });
});

【问题讨论】:

  • 如何更新列表视图?
  • 此时它是一个带有一个列表视图项的静态列表视图。但是因为这行不通,所以我还不打算用 json 填充它。
  • 创建这个列表的三行代码应该可以工作,因为我已经在一个单独的文件中尝试过,但是在这个脚本中它不起作用。

标签: jquery html jquery-mobile


【解决方案1】:

添加这个

$("#tab_zoek").click(function () {
    $('#content_main').html($('#content_zoek_category').html());
    $('#page_main').trigger( "create");
});

http://jsfiddle.net/Lu4qw/

第二种方式:

$("#tab_zoek").click(function () {
    $('#content_main').html($('#content_zoek_category').html());
    $('#list_category').listview().listview("refresh");
});

http://jsfiddle.net/Lu4qw/1/

【讨论】:

  • 像魅力一样工作。另一个问题是,列表视图不是屏幕全宽的原因。 (那是 te page-role="content" 吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-20
  • 2020-04-20
  • 1970-01-01
相关资源
最近更新 更多