javascript - 基于先前选择的下拉列表根本不填充

标签 javascript php jquery mysql drop-down-menu

我正在尝试根据先前下拉列表中的选择来填充 mysql 表中的下拉列表。

我查看了许多问题,询问如何执行此操作,并提出了以下内容,但是当我从第一个下拉列表中选择某些内容时,我的第二个下拉列表没有任何反应。

我有 newStock.php,其头部包含以下脚本。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    <script>
<script type="text/javascript">
                $(function(){                    
            $('#field').change(function(){ //on change event
            var fieldVal = $('#field').val(); //<----- get the value from the parent select
            $.ajax({
                url     : 'process.php', //the url you are sending datas to which will again send the result
                type    : 'GET', //type of request, GET or POST
                data    : { fieldValue: fieldVal}, //Data you are sending
                success : function(data){$('#field2').html(data)}, // On success, it will populate the 2nd select
                error   : function(){alert('an error has occured')} //error message
            })
        })

        })
</script>

在正文中创建两个下拉菜单:

<?php
 connect('final');//connect to DB
 $sql = mysql_query("SELECT * FROM stockcata");
     while ($row = mysql_fetch_array($sql)){
             echo '<option value='.$row['id'].'>' .$row['Catagory']. '</option>';
      }
 ?>
 </Select>  </label> 

 <input type="text" name="addCatagory" />

 <label><span>Section</span> 
 <Select name="field2" id="field2">

 </Select>  </label> 

以下 process.php 用于查询我的数据库并提供填写第二个下拉列表的选项

<?php
require("header.php");
connect('final');

$temp = $_GET['fieldValue'];
$result = mysql_query("SELECT * FROM stocksection WHERE cataID = '$temp'");
 while ($row = mysql_fetch_array($result)){
 echo '<option value='.$row['id'].'>' .$row['section']. '</option>';
 }
 ?>

第二个下拉列表中没有任何反应,我不知道为什么。

编辑......

我尝试进一步调试它。我的数据库设置有2个表; 部分:ID、标题、Catagory_ID

和类别:ID、标题

当它查询节表时,无论我从下拉列表中选择哪个选项,它都只返回 Catagory_ID 为 0 的数据

最佳答案

ajax调用成功时的data并不是你想象的字符串。您可能想要这样的东西:

success : function(data){$('#field2').html(data.d)}, // On success,

如果这不起作用,请尝试使用 console.log(data.d); 来查看您返回的内容。

关于javascript - 基于先前选择的下拉列表根本不填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19916407/

相关文章:

javascript - 使用 jquery 自动进行页面转换?

javascript - 在 C# Web 浏览器中使 javascript 变量全局作用域

javascript - Fancybox 只能在 Dreamweaver cs6 中正常工作

javascript - jQuery :how to show and hide a vertical panel?

javascript - 渲染由路由器附加的组件中的项目列表

javascript - 检查数据库中的现有数据

php - 如何从当前日期计算最后四个星期日的日期

PHP 不发布到 mysql 数据库

javascript - 如何将变量和数据从PHP传递到JavaScript?

javascript - 如何将变量转为选项?