从mysql填充下拉列表时,ajax脚本不显示php文件的任何结果

c0vxltue  于 2021-06-23  发布在  Mysql
关注(0)|答案(0)|浏览(246)

我从mysql创建了一个下拉列表,我想使用ajax将选择传递给另一个下拉列表。令人惊讶的是,当我在php文件中初始化php时,我没有得到任何结果,如果我没有初始化它,我将收到php文件的确切内容。当我填充下拉列表并对选项进行硬编码时,脚本可以工作,但当我从php填充选项时,脚本不能工作。
在我的主php文件中,我有:

</div>  

  <p>Company <span>*</span></p>
  <span class="icon-case"><i class="fa fa-comments-o"></i></span>
  <select name="company" id="company">
    echo '<option value=""></option>;'

        <?php

        $query="SELECT `name` FROM `companies` ORDER BY `name`ASC";
        $result=mysqli_query($connection,$query) or die ("Query to get data from sector table failed: ".mysql_error());

        while ($row=mysqli_fetch_array($result)) {
        $company_id=$row["company_id"];

        $company_name=$row["name"];
        echo "<option value=\"$company_id\">
         $company_name
         </option>";
        }

        ?>

    </select>

  </div> 
 </div>  
<div id="show">

ajax脚本如下:

<script type="text/javascript">
 $(document).ready(function(){ 
 $("#company").change(function(){ 
  var company = $(this).val(); 
  var dataString = "company="+company; 

  $.ajax({ 
    type: "POST", 
    url: "get-data.php", 
    data: dataString, 
    success: function(result){
    $("#show").html(result); 
    }
  });
 });
});
</script>

最后,我的get-data.php看起来像:

<?php
$output = ($_POST['company']);
echo $output;
?>

如果我对下拉菜单使用手动选项,一切都正常,但是当我使用此代码填充下拉列表时,ajax脚本停止工作

<?php

    $query="SELECT `name` FROM `companies` ORDER BY `name`ASC";
    $result=mysqli_query($connection,$query) or die ("Query to get data from sector table failed: ".mysql_error());

    while ($row=mysqli_fetch_array($result)) {
    $company_id=$row["company_id"];

    $company_name=$row["name"];
    echo "<option value=\"$company_id\">
     $company_name
     </option>";
    }

    ?>

你能帮帮我吗?我日日夜夜都在做这个。
向托马索问好

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题