显示动态构建的div

时间:2013-11-27 17:48:09

标签: php jquery

我有一个从数据库中的条目构建的下拉菜单。我需要做的是根据菜单中的选定条目显示某些内容。因此,如果我在菜单中选择“苹果”,我可以编写一个查询以从数据库中提取“Apple”信息,内容div将显示此信息。 “Oranges”会写一个“Oranges”查询,然后显示橘子的信息。

理想情况下,我想要所选菜单项的索引。但由于我没有提交任何表格,我无法从$_POST变量中获取信息。我可以通过jQuery或Javascript获得它,但我需要它来处理另一个MySQL语句。

由于我不知道菜单中的信息,因此我无法设置特定的div来显示内容。

希望这是有道理的!谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

您想要创建异步调用。您希望在表单上触发的JavaScript更改为调用服务器。在服务器上,执行SQL查询并以机器可读格式(如JSON)返回它,或者只在服务器上构建div。当JavaScript从服务器获得回复时,它可以解析内容并将其插入页面。

答案 1 :(得分:0)

我觉得你需要一个例子

JQUERY:

    $('select').change(function(){
        var myfruit = $(this).val();  // apple, orange

        $.ajax({
            "url": yourphpfile.php,
            "type": "POST",
            "data":{"fruit":myfruit},
            }).success(function(response) {
            // response is what we get back from php

                for(var i in response){
                     $('#div').append(response[i]['fruit'];
                }
        });
    });

PHP

if(isset($_POST['fruit'])){
    $sql = "SELECT * FROM fruits WHERE fruit = '{$_POST['fruit']}'";
    // do something with your query, and get a result;
    echo json_encode($result);  // this gets sent to your jquery
    die;
}