我正在开发一个简单的内容管理系统,允许用户创建类别和子类别。这是代码
$categories = mysql_query("SELECT * FROM categories");
while($row = mysql_fetch_array($categories)) {
$text = $row['text'];
$id = $row['id'];
echo "<li><a href='?category=$id'>$text</a></li>";
}
现在,一切工作正常,如预期的,但我希望,当用户点击<li>
项,系统加载与所选类别相关的子类别。在PHP我不能这样做,所以我需要使用JavaScript,但我不明白为什么。我写了这段代码。
<script type="text/javascript">
function loadSubCategories() {
<?php
if(isset($_REQUEST['category'])) {
echo "Hello";
}
?>
}
</script>
显然和
echo "<li><a href='?category=$id' onClick='javascript:loadSubCategories()'>$text</a></li>";
这不起作用,因为当我点击链接时没有出现任何东西。怎么解?
在函数调用中传递id属性:
echo "<li><a id="$id" onClick='javascript:loadSubCategories(this.id)'>$text</a></li>";
然后你可以使用jQuery/Ajax,尝试这样做:
$( document ).ready(function() {
function loadSubCategories(id){
$.ajax({
url : Class/Method-Name,
type : 'POST',
data : form_data,
success : function(msg){
// Action
}
}),
}
});