简体   繁体   English

href加载数据库项目onClick

[英]A href load database items onClick

i'm developing a simple Content Management System that allow users to create categories and subcategories. 我正在开发一个简单的内容管理系统,该系统允许用户创建类别和子类别。 This is the code. 这是代码。

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

}

Now, all works fine as expected but i would like that when a user click on <li> items the system loads subcategories related to the selected category. 现在,所有功能都按预期工作,但我希望当用户单击<li>项目时,系统会加载与所选类别相关的子类别。 In PHP i can't do this so i need to use JavaScript but i don't understand why. 在PHP中,我无法做到这一点,因此我需要使用JavaScript,但我不明白为什么。 I wrote this code. 我写了这段代码。

<script type="text/javascript">

    function loadSubCategories() {
        <?php

        if(isset($_REQUEST['category'])) {
            echo "Hello";
        }           

        ?>  
    }

</script>

and obviously 显然

echo "<li><a href='?category=$id' onClick='javascript:loadSubCategories()'>$text</a></li>";

This not works because nothing appear when i click on a link. 这不起作用,因为当我单击链接时什么也没出现。 How can i solve? 我该如何解决?

Pass id attribute in function call like this: 在函数调用中传递id属性,如下所示:

 echo "<li><a id="$id" onClick='javascript:loadSubCategories(this.id)'>$text</a></li>";

Then you can use jQuery/Ajax, try something like this: 然后,您可以使用jQuery / Ajax,尝试如下操作:

$( document ).ready(function() {

    function loadSubCategories(id){
        $.ajax({
            url     : Class/Method-Name,
            type    : 'POST',
            data    : form_data,
            success : function(msg){
                // Action
            }
        }),                
    }

});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM