我有3个php页面,1个索引页面和2个其他子页面,它们在索引页面中有链接(销售和产品)。当我点击销售时,可以在pageint
或document ready
加载销售数据,因为我在下面使用调试。
$('[data-role="page"]').live('pageshow', function () { <-- error line
console.log("pageshow");
});
$(document).on('pageinit', function(){
console.log("pageinit");
});
$(document).ready(function(){
console.log("docready");
})
当我点击索引页面中的链接时,没有任何代码触发,但是当页面加载并且我刷新时,我得到错误行指示的javascript错误
Object [object Object] has no method 'live'
我正在使用
jquery.1.9.1.min.js
jquery.mobile.1.3.2.min.js
索引页面的html是
<div data-role="page" data-ajax="false" id="home">
<?php include_once("header.php");?>
<div data-role="content" data-theme="">
<ul data-role="listview" data-divider-theme="b" data-inset="true">
<li data-role="list-divider" role="heading">Menu</li>
<li data-transition="flip">
<a href="outgoing.php" data-transition="slide" data-ajax="true">sales </a>
</li>
<li data-transition="flip">
<a href="settings.php" data-transition="slide" data-ajax="true">products</a>
</li>
<li>
<a href="../logout.php">Logout</a>
</li>
</ul><div data-role="navbar" data-iconpos="">
</div>
</div>
<div data-role="footer" data-theme="b">
<?php include_once("../footer.php");?></h4>
</div>
</div>
我做错了什么?
修改
我更新了$('[data-role="page"]').on('pageshow', function () {
的代码,但是除非我在满载后手动刷新页面,否则不会触发任何功能
答案 0 :(得分:2)
我通过在加载不触发文档readey的页面的链接中设置data-ajax = false来解决问题,其余的
<a href="page.php" data-ajax="false">link</a>
谢谢
答案 1 :(得分:1)
live
,您必须在新版本的jquery中使用on
函数。 live
已弃用1.7
,1.9
已删除1.9.1
。在使用on
时,您必须使用$('[data-role="page"]').on('pageshow', function ()
。
{{1}}