我正在使用一些针对移动设备的复杂PHP,它正在使用AJAX(如<div>
中的data-ajax =“true”所示)将其他PHP文件包含在页面中并同时使用jQuery隐藏现有数据。当标题和地址发生变化时,实际的网页就会被更新。更新第一个新“页面”时,不添加任何javascript。核心页面包含一个涉及输出缓冲的PHP文件,但我认为这不会导致脚本错误。我正在使用PHP 5.4.9,不确定这是否会产生影响。
核心页面(第1页):
<?php
if (!isset($_SESSION)) session_start();
include_once("$path/lib/functions/show_header.php");
//PHP page including output buffer
show_header($html_back='normal', $html_home='public_page', $header_title='Directory', $bool_back=TRUE, $title=$header_title, $javascript=&$myScript, $cache=FALSE, $viewport=TRUE);
?>
<ul id="list" data-inset="true" data-role="listview" ><!--data-filter="true" data-filter-placeholder="Search for Feeds..."-->
<li id="header" data-role="list-divider">Select a Search Option</li>
<li>
<a href="page2.php?header=Option1" data-ajax="true">Option 1</a>
</li>
<li>
<a href="page2.php?header=Option2" data-ajax="true">Option 2</a>
</li>
<li>
<a href="page2.php?header=Option3" data-ajax="true">Option 3</a>
</li>
</ul>
</div><!-- // Content-->
</div><!-- // Page-->
</body
</html>
插入代码:
<script>alert("The JS is working!");</script>
<div data-role="page" data-theme="c">
<div data-role="header" data-theme="b">
<a href="#" data-rel="back" data-ajax="true" data-icon="arrow-l" data-direction="reverse">Back</a>
<h1><?php echo $_GET['header']?></h1>
</div>
<div data-role="content" role="main">
<textarea id=search name="search" cols="1" rows="1" onblur="return validate()" onfocus="this.innerHTML=''">Search For...</textarea>
<ul id="list" data-inset="true" data-role="listview" >
<li id="header" data-role="list-divider"></li>
<li>
<a id=button href="" data-ajax="true">Search</a>
</li>
</ul>
</div><!-- // Content-->
</div><!-- // Page-->
任何帮助将不胜感激。我对PHP很有经验,但对于AJAX和jQuery来说,这是一个新手。
答案 0 :(得分:0)
jQuery只抓取最外层<div>
中包含的PHP。不知何故,这从未进入文档。文档是王道!
在<div>
内移动javascript和php后,我可以做任何我想做的事情。那时我摆脱了内联javascript并转而使用javascript事件处理程序。我从来没有能够追踪导致它忽略<div>
之外的php和javascript的确切jquery使用情况。