一个href加载数据库项onClick

时间:2015-08-10 12:06:56

标签: javascript php html sql

我正在开发一个简单的内容管理系统,允许用户创建类别和子类别。这是代码。

$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>";

这不起作用,因为当我点击链接时没有出现。我怎么解决?

1 个答案:

答案 0 :(得分:0)

在函数调用中传递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
            }
        }),                
    }

});