我正在创建一个排序页面,该页面将显示数据库的内容,用户可以使用listjs对其进行排序。问题是,当我按下任何按钮,从数据库加载的内容消失。当我手动填充内容时,效果很好。有人能帮我解决这个问题吗?
My load function:
$(document).ready(function(){
$(".list").load("../wp-content/php/sorting.php");
});
sorting.php
<?php
mysql_connect("***", "***", "**") or die(mysql_error());
mysql_select_db("***");
$result = mysql_query("SELECT * FROM business");
while($row = mysql_fetch_array($result))
{
?><li class="onebusiness"><a href="<?php
echo $row['link'];?>"><img src="<?php
echo $row['img'];?>" height="125" width="125"/><p class="name"><?php
echo $row['name'];?></p><p class="category" style="display:none;"><?php
echo $row['category'];?></p></a></li><?php
}
mysql_close();
?>
HTML: <script src="../wp-content/js/filter/call-php.js" type="text/javascript"></script>
<script src="../wp-content/js/list/list-min.js" type="text/javascript"></script>
<div id="busineseslist">
<input class="search" placeholder="Search Business" />
<ul class="sort-by">
<li class="sort btn" data-sort="name">Sort by name</li>
<li class="sort btn" data-sort="category">Sort by category</li>
</ul>
<ul class="filter">
<li class="btn" id="filter-none">Show all</li>
<li class="btn" id="filter-something">Only show something</li>
<li class="btn" id="filter-else">Only show something else</li>
</ul>
<div class="list"></div>
</div>
为什么你不这样做呢:
<script src="../wp-content/js/filter/call-php.js" type="text/javascript"></script>
<script src="../wp-content/js/list/list-min.js" type="text/javascript"></script>
<div id="busineseslist">
<input class="search" placeholder="Search Business" />
<ul class="sort-by">
<li class="sort btn" data-sort="name">Sort by name</li>
<li class="sort btn" data-sort="category">Sort by category</li>
</ul>
<ul class="filter">
<li class="btn" id="filter-none">Show all</li>
<li class="btn" id="filter-something">Only show something</li>
<li class="btn" id="filter-else">Only show something else</li>
</ul>
<div class="list"><?php include '../wp-content/php/sorting.php'; ?></div>
</div>
用这个你可以删除这一行:
<script src="../wp-content/js/filter/call-php.js" type="text/javascript"></script>//delete this
我认为这是js与以下代码:
$(document).ready(function(){
$(".list").load("../wp-content/php/sorting.php");
});
因为使用php include你不需要load函数;)
------------------------ 编辑 ----------------------------------------
在wordpress中,你可以这样包含文件:
把包含文件放在你的主题文件夹中,并在你的主题的footer.php:
<?php include (TEMPLATEPATH . '/sorting.php'); ?>
参考链接:http://www.deluxeblogtips.com/2010/06/wordpress-include-template-files.html
你的div应该看起来像:
进入"主题编辑器",寻找生成html的文件。编辑它并将此代码放置在div标签之间:
<div class="list"><?php include (TEMPLATEPATH . '/sorting.php'); ?></div>
Saludos .