根据选择框值选择数据库表(php + Ajax)

时间:2012-09-20 15:42:04

标签: php ajax

好的,现在让我发疯了,我似乎根本无法找到解决方案!

基本上我的页面上有两个选择框,但是我希望根据第一个选择框的值从mysql数据库中填充第二个选择框。

例如,如果我从第一个选择框中选择值'misc',则第二个选择将填充我的数据库中的misc表! (第一个选择框更改时,第二个选择框将通过ajax刷新)

我唯一的问题是我想不出一种方法来存储php变量中第一个选择框的值,所以它可以在我的函数中用来填充第二个选择框(由ajax刷新)

谢谢你们

<form action="scripts/tp/process.php" method="post" enctype="multipart/form-data">
     Select teleport here:
     <select name="selectmate" id="Testid" onchange='Ajax();'>
        <option value="Misc">Misc...</option>
        <option value="Stunt">Stunt</option>
        <option value="deathmatches">Deathmatches</option>
        <option value="Car"> Car </option>
        <option value="Races">Races </option>
    </select>
    <br/>
    <label for="file">Filename:</label>
    <input name="file" type="file"/>
    <br/>
    <label for="Name">Teleport name:</label>
    <input type="text" name="Name" id="Name"/>
    <br/>
    <label for="Tp"> Teleport command:</label>
    <input type="text" name="Tp" id="Tp"/>
    <br/>
    <label for="Info">teleport infomation</label>
    <input type="text" name="Info" id="Info"/>
    <br/>
    <input type="submit" name="submit" value="Submit"/>
</form>
<h2>Delere entry here!</h2>
<form action="scripts/misc/miscdelete.php" method="post" enctype="multipart/form-data">
    <select name="deletemisc">
        <?php
        ListDatabase($value);
        ?>
    </select>
    <input type="submit" name="delete" value="Delete"/>
</form>

我需要将第一个选择框的值存储在变量$ value

1 个答案:

答案 0 :(得分:0)

$("#Testid").change(function () {
    var val = $("#Testid option:selected").text();
    // here your ajax request
    // Fill second select here:
    var deletemisc = $("#deletemisc");
    $("#deletemisc > option").remove();
    $.post("/path/to/script", { selected_val: val}, function(result) {
        $.each(result, function (item) {
            deletemist.append($("<option />").val(item.val).text(item.text));
        })
    });
});​

“/ path / to / script” - 必须返回val的json数组。