好吧,我几天前做过question,但不知道我是否清楚。
所以,我现在使用另一个函数$.mobile.loadPage
我想要做的只是将内容从另一个文件加载到div,就像使用普通jquery的$.ajax
一样。
在我的主页中:
<div data-role="page">
<button id="load" style="border: solid blue;">Click here to load</button>
<div data-role="content" id="target">
<!-- ajax load here -->
</div>
</div>
这是来自其他文件的html:
<div id="secondPage" style="border:solid red;">
<p>test</p>
</div>
最后,js:
$("body").on("click", "#load", function () {
$.mobile.loadPage("mobile/favorites", {
pageContainer: $('#target'),
type: 'post',
reloadPage: true
});
});
在我看来没有错误,网址加载了我在chrome调试中检查的内容。
所以,我错过了什么?
答案 0 :(得分:1)
您的代码正在尝试在另一个页面中加载一个页面。缺少第二页(id="secondPage"
)是data-role="page"
属性。
我从未试图完成你在这里尝试的东西,但基于文档似乎令人困惑。
该方法加载页面,将其插入容器内的DOM(而不是其他页面)。 reloadPage
参数强制加载的页面刷新(如果已经在DOM中(之前已加载))。不是你想做的。
通过jQuery加载内容,插入DOM $("#myDiv").load("ajax/test.html");
,然后使用$("#myPage").page("destroy").page();
刷新当前页面,您将有更好的运气。请注意,如果您只是插入html,则可能不需要此最后一位jQuery Mobile没有增强它。