【发布时间】:2011-01-27 20:10:22
【问题描述】:
我正在使用 jQuery Mobile 构建移动 Web 应用程序,但遇到了问题。我正在使用 jQuery 解析 XML 文件并创建列表项。它构建列表,然后将<li>s 的列表附加到页面上的<ul>。我读到,为了使列表的样式正确,您必须在附加数据以刷新列表后调用.listview('refresh'),以便 jQuery Mobile 可以为列表设置正确的样式。
我的问题是列表永远不会刷新。它的样式一直不正确。难道我做错了什么?我的代码正确吗?仅供参考,我尝试了.listview()、.listview('refresh') 等的各种变体。
代码:
<script type="text/javascript">
$(window).load(function() {
$.ajax({
type: "GET",
url: "podcast.xml",
dataType: "xml",
async: false,
success: parseXml
});
});
function parseXml(xml) {
var podcastList = "";
$(xml).find("item").each(function() {
podcastList += "<li class='ui-li-has-thumb ui-btn ui-btn-icon-right ui-li ui-btn-up-c' role='option' data-theme='c'><img src='" + $(this).find("itunes\\:image").attr("href") + "' class='ui-li-thumb'><h3 class='ui-li-heading'><a href='" + $(this).find("enclosure").attr("url") + "' class='ui-link-inherit'>" + $(this).find("title").text() + "</a></h3><p class='ui-li-desc'>" + $(this).find("itunes\\:subtitle").text() + "</p></li>";
});
$("#podcastList").append(podcastList);
$("#podcastList").listview('refresh');
}
</script>
谢谢!
【问题讨论】:
标签: jquery ajax listview mobile