Javascript PHP/jQuery Ajax奇怪的结果,需要一些建议吗?

Javascript PHP/jQuery Ajax奇怪的结果,需要一些建议吗?,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有一个小问题,我无法解决。 我有一个让我们称之为“插入页面”,用户在其中输入Firstname和Lastname,并且有一个“楼层”列表的下拉列表。现在每层楼都有工作站。因此,当用户选择一个楼层时,我会发出一个Ajax调用,以返回该楼层的工作站: 插入地板: $('#floor').change(function (){ if ($('#floor option:selected').text() == "Please select a floor"){ $('#wo

我有一个小问题,我无法解决。 我有一个让我们称之为“插入页面”,用户在其中输入Firstname和Lastname,并且有一个“楼层”列表的下拉列表。现在每层楼都有工作站。因此,当用户选择一个楼层时,我会发出一个Ajax调用,以返回该楼层的工作站:

插入地板:

 $('#floor').change(function (){
    if ($('#floor option:selected').text() == "Please select a floor"){
        $('#workstation').slideUp();
    } else {
        $('#workstation').slideDown();
    }
    $floor = $('#floor option:selected').val();
    $.ajax({
        url: "workstationAjax.php",
        data: {floor: $floor},
        type: 'post',
        dataType: 'json',
        success: function(data){
            $.each(data, function (i, msg) {
                $('#workstation').append("<option id='department' name='department' value=" + msg.floor_id + ">" + msg.description + "</option>")
            });
        }
    });
});
$('#floor')。更改(功能(){
如果($(“#楼层选项:选中”).text()=“请选择一个楼层”){
$(“#工作站”).slideUp();
}否则{
$(“#工作站”).slideDown();
}
$floor=$(“#floor选项:选定”).val();
$.ajax({
url:“workstationAjax.php”,
数据:{floor:$floor},
键入:“post”,
数据类型:“json”,
成功:功能(数据){
$.each(数据、函数(i、msg){
$(“#工作站”)。追加(“+msg.description+”)
});
}
});
});
WorkstationAjax.php

<?php

header ("content-type: application/json; charset=utf-8");
require_once '../Config/db.php';

if (!isset($_POST['floor']) || $_POST['floor'] == "") {
    return false;
} else {

$floorID = $_POST['floor'];
$query = $conn->query("select * from workstation where floor_id= $floorID");
$query->execute();

$array = $query->fetchAll(PDO::FETCH_ASSOC);


echo json_encode($array);

}

您很可能看到奇怪的行为,因为您为每个
元素提供了相同的ID。ID应该是唯一的,或者将其更改为
类。对于HTML中的工作站,您有
anme
而不是
name
,文档中的
id
必须是唯一的。这可能不是什么大问题,但是
名称
选项
元素上也无效。有关和的详细信息,请参阅文档
        <h3><strong>Insert Employee</strong></h3>
    <form id="insertEmployee" action="admin/insert.php" method="post">
        <input type="text" name="firstname" placeholder="Enter Firstname" class="form-control-static"/>
        <p/>
        <input type="text" name="lastname" placeholder="Enter Lastname"  class="form-control-static" />
        <br />

        <select id="floor" name="floor">
            <option value="">Please select a floor</option>
            <?php
            $floorArray = getData("floor");
            foreach ($floorArray as $key=> $row) {
                echo "<option id='floor' name='floor' value=\"{$row['floor_id']}\">{$row['description']}</option>";
            }

            ?>

        </select>
<br>
        <select id="workstation" anme="workstation">

        </select>
 <br />
        <select id="department" name="department">


        </select>
            $.each(data, function (i, msg) {
            $('#workstation').append("<option id='department' name='department' value=" + msg.floor_id + ">" + msg.description + "</option>")
        });
            $.each(data, function (i, msg) {
            $('#workstation').append("<option id='workstation' name='workstation' value=" + msg.floor_id + ">" + msg.description + "</option>")
        });