我只有一个简单的问题。我开始学习javascript。
目前正在学习有关HTML内容操作的DOM内容。
我的问题是这样的:
<?php
ob_start();
session_start();
include("db/config.php");
mssql_select_db($dbName1, $dbConn);
$sq = mssql_query("SELECT TOP 1 * FROM LandingPage ORDER BY ID DESC");
while($s = mssql_fetch_array($sq)) {
?>
<nav id="overlay_box" class="overlay_box_style">
<div id="overlay_inbound">
<a href="#" id="latestEntryForm">Latest Entry</a>
</div>
<div id="overlay_outbound">
<a href="#" id="msgContentForm">Leave A Message!</a>
</div>
<!-- javascript DOM injection @overlay_holder -->
<div id="overlay_holder" class="overlay_holder_style">
<ul>
<li id="overlay_title">
<p class="overlay_title_style">Latest Entry</p>
<p class="overlay_title_style">- <?=$s['Title']?></p><br>
</li>
<li id="overlay_content">
<?=$s['Content'] = substr($s['Content'], 0, 200);?>...
</li>
<li id="overlay_date">
</br>| <?=$s['Date'];?> |<br><?=$s['Author'];?>
</li>
</ul>
</div>
</nav>
<? } ?>
<script type="text/javascript">
$("#msgContentForm").click(function() {
$("#overlay_holder").load("admin/msgContentForm.php");
return false;
});
</script>
我如何解决这个问题,使其高效和优化,而无需额外的&#34;解决问题&#34; * .php文件? 提前谢谢!
答案 0 :(得分:1)
我的想法是这样的:
使用$ _GET [“mode”]超全局变量,并允许值“local”和“whole”。这个用于确定您是要加载部分HTML还是整个HTML。
然后,设置条件来控制输出,例如:
if($_GET["mode"]=="local"){echo "bla bla bla";}
然后,在ajax URL中,切换到:
$("#overlay_holder").load("admin/latestEntryForm.php?mode=local");
然后你只需要编辑一个文件!
答案 1 :(得分:0)
看起来第一个文件是静态的,除了来自latestEntryForm.php的内容。让第一个文件包含latestEntryForm.php页面代替最新的入口代码。然后你不会重复你的PHP代码。