根据下拉列表中的选定值自动填充文本字段

时间:2019-11-19 09:36:39

标签: php html mysql ajax

我有一个“品牌”文本字段和一个下拉列表。下拉列表显示了我数据库中的产品代码。因此,如果我从下拉菜单中选择一个选定的值,则“品牌”文本字段将根据产品代码的ID自动打印有关产品的信息。

所以我尝试的是,当下拉列表中有更改时,文本字段将基于所选值的ID打印或显示一个值。 这是我的PRS.php

<script src="https://code.jquery.com/jquery-3.2.1.min.js" type="text/javascript"></script>


<script>
  function getState(val) {
    $.ajax({
    type: "POST",
    url: "ff.php",
    data:'productid='+val,
    success: function(data){
      $("#brandss").val(data);
    }
    });
  }
  </script>


<td><select name="drpcode" onchange="getState(this.value)" class="form-control name_list"><?php $drp = mysqli_query($conn,"SELECT productcode FROM products"); while ($dp = mysqli_fetch_array($drp)) {
                        ?><option value="<?php echo $dp['productcode'] ?>"><?php echo $dp['productcode']; ?></option><?php } ?></select></td>

<td><input type="text" id="brandss" name="brand[]" placeholder="Brand" class="form-control name_list" required  value=""></td>

该值将在ff.php中发布

<?php
 require_once("conn.php");


 $id = $_POST['productid'];

     $query = mysqli_query($conn,"SELECT productbrand FROM products WHERE productid = '$id' ");

     while($rs = mysqli_fetch_array($query,MYSQLI_BOTH)) {
     $brand = $rs['productbrand'];
}
 echo $brand;
?>

问题是,我正在获取POST值,但在“ brand”文本字段中未显示任何输出。

1 个答案:

答案 0 :(得分:0)

在ff.php中,有许多PHP打开和关闭标签。尝试如下,让我知道

<script src="https://code.jquery.com/jquery-3.2.1.min.js" type="text/javascript"></script>


<script>
  function getState(val) {
    $.ajax({
    type: "POST",
    url: "ff.php",
    dataType:"text",
    data:{productid:val},
    success: function(data){
      $("#brandss").val(data);
    }
    });
  }
  </script>


<td><select name="drpcode" onchange="getState(this.value)" class="form-control name_list"><?php $drp = mysqli_query($conn,"SELECT productcode FROM products"); while ($dp = mysqli_fetch_array($drp)) {
                        ?><option value="<?php echo $dp['productcode'] ?>"><?php echo $dp['productcode']; ?></option><?php } ?></select></td>

<td><input type="text" id="brandss" name="brand" placeholder="Brand" class="form-control name_list" required  value=""></td> 

ff.php

   <?php
    require_once("conn.php");
    //$db_handle = new DBController();
       $id = $_POST['productid'];

        $query ="SELECT productbrand FROM products WHERE productid =$id";
        $results = $conn->query($query);
        while($rs=$results->fetch_assoc()) {
        $brand = $rs['productbrand'];

    }
    echo $brand;

?>
相关问题