在php jQuery中根据下拉列表选择点击一个按钮时填写文本框 [英] Fill textbox when click a button according to dropdown selection in php jQuery

查看:96
本文介绍了在php jQuery中根据下拉列表选择点击一个按钮时填写文本框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的过程是这样的:我有一个下拉菜单和文本框。当我从下拉列表中选择一个id(唯一ID),然后单击提交按钮,以显示相应的名称到文本框。



我的数据库字段:


  1. id (自动增量)

  2. AgencyName_id (唯一ID)

  3. 名称

dispay。 html

 < select name =agencyID_dwnclass =idLookup_dwnid =agencyID_dwn> 
< option selected> ...选择...< / option>
<?php
while($ row = mysqli_fetch_array($ result)){
?>

< option value =<?php echo $ row ['AgencyName_id'];?>>
<?php echo $ row ['AgencyName_id'];?>< / option>
<?php
}
?>
< / select>
//输入文本
< input type =textid =testid>
//提交按钮
< input type =submitname =lookupSubmit>

dataGet.php

 <?php 
if(isset($ _ POST [lookupSubmit])){

$ user_id = $ _ POST ['agencyID_dwn'];

$ query =select * from AgencyHome其中AgencyName_id ='$ user_id';
$ result = mysqli_query($ db,$ query);

$ data = mysqli_fetch_assoc($ result);

echo json_encode($ data);
exit();

}

?>

myjson.js

 < script src =// code.jquery.com/jquery-1.11.2.min.js\"> < /脚本> 
< script src =// code.jquery.com/jquery-migrate-1.2.1.min.js\"> < /脚本>
< script type =text / javascript>
$(document).ready(function(){

$('#agencyID_dwn')。change(function(){

var reg_number = $这个).val();
var data_String;
data_String ='reg_number ='+ reg_number;
$ .post('dataGet.php',data_String,function(data){
var data = jQuery.parseJSON(data);

$('#testid')。val(data.Name);


});
});
});

< / script>

当我点击提交按钮
我将数据库结果作为数组在dataGet.php 但是在文本框中没有显示结果。我的代码中有任何错误?

解决方案

这是你的答案



你的index.php

 <?php 
$ conn = mysqli_connect( 本地主机, 根, , TEST_DB);

?>

<!DOCTYPE>
< html xmlns =http://www.w3.org/1999/xhtml>
< head>
< meta http-equiv =Content-Typecontent =text / html; charset = utf-8/>
< title> Untitled Document< / title>
< script src =// code.jquery.com/jquery-1.11.2.min.js\"> < /脚本>
< script src =// code.jquery.com/jquery-migrate-1.2.1.min.js\"> < /脚本>
< script type =text / javascript>
$(document).ready(function(){

$('#agencyID_dwn')。change(function(){

var reg_number = $这个).val();
var data_String;
data_String ='reg_number ='+ reg_number;
$ .post('dataGet.php',data_String,function(data){
console.log(data);
var data = jQuery.parseJSON(data);

$('#testid')。val(data.Name);


});
});
});

< / script>

 <身体GT; 
< form>
< select name =agencyID_dwnclass =idLookup_dwnid =agencyID_dwn>
< option selected> ...选择...< / option>
<?php
$ query =从代理商名称选择代理商名称;
$ result = mysqli_query($ conn,$ query);
while($ row = mysqli_fetch_array($ result)){
?>

< option value =<?php echo $ row ['AgencyName_id'];?>>
<?php echo $ row ['AgencyName_id'];?>< / option>
<?php
}
?>
< / select>
//输入文本
< input type =textid =testid>
//提交按钮
< input type =submitname =lookupSubmit>
< / form>
< / body>
< / html>

和您的dataGet.php文件如下

 <?php 

$ conn = mysqli_connect(localhost,root,,test_db);

$ reg_number = $ _ POST ['reg_number'];

$ query =select * from AgencyName其中AgencyName_id ='$ reg_number';
$ result = mysqli_query($ conn,$ query);

$ data = mysqli_fetch_assoc($ result);
// print_r($ data);
echo json_encode($ data);
exit();


?>
只是检查你的表名,所有的都将工作


My process is like this: I have a dropdown menu and text box. When I select an id (unique id) from dropdown and then click submit button want to display corresponding name to text box.

My database fields :

  1. id (Auto increment)
  2. AgencyName_id (unique id)
  3. Name

dispay.html

<select name="agencyID_dwn" class="idLookup_dwn"  id="agencyID_dwn" >
<option selected>...Select...</option>
  <?php
  while($row = mysqli_fetch_array($result)){
  ?>

   <option value="<?php echo $row['AgencyName_id'];?>"> 
   <?php echo $row['AgencyName_id'];?></option>
 <?php
  }
   ?>
    </select>
        // for input text
        <input type="text" id="testid">
        // submit button
         <input type="submit" name="lookupSubmit">

dataGet.php

            <?php
            if (isset($_POST["lookupSubmit"])) {

            $user_id=$_POST['agencyID_dwn'];

             $query = "select * from AgencyHome where AgencyName_id = '$user_id'" ;
        $result=mysqli_query($db, $query);

        $data =  mysqli_fetch_assoc($result);

       echo json_encode($data);
         exit();

       }

        ?>

myjson.js

           <script src="//code.jquery.com/jquery-1.11.2.min.js">                </script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js">  </script>
    <script type="text/javascript">
      $(document).ready(function(){

      $('#agencyID_dwn').change(function(){

    var reg_number = $(this).val();
      var data_String;
     data_String = 'reg_number='+reg_number;
    $.post('dataGet.php',data_String,function(data){
      var data= jQuery.parseJSON(data);

       $('#testid').val(data.Name);


          });
       });
      });

      </script>

When i click submit button I got the database results as array in "dataGet.php".But in textbox did not display the result.Any mistake in my code?

解决方案

here is your answer

your index.php

    <?php
    $conn = mysqli_connect("localhost","root","","test_db");

 ?> 

<!DOCTYPE>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script src="//code.jquery.com/jquery-1.11.2.min.js">                     </script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js">  </script>
 <script type="text/javascript">
  $(document).ready(function(){

  $('#agencyID_dwn').change(function(){

var reg_number = $(this).val();
  var data_String;
 data_String = 'reg_number='+reg_number;
$.post('dataGet.php',data_String,function(data){
    console.log(data);
  var data= jQuery.parseJSON(data);

   $('#testid').val(data.Name);


      });
   });
  });

  </script>

<body>
<form>
<select name="agencyID_dwn" class="idLookup_dwn"  id="agencyID_dwn" >
<option selected>...Select...</option>
 <?php
  $query = "select AgencyName_id from AgencyName";
 $result = mysqli_query($conn,$query);
 while($row = mysqli_fetch_array($result)){
  ?>

   <option value="<?php echo $row['AgencyName_id'];?>"> 
   <?php echo $row['AgencyName_id'];?></option>
  <?php
   }
   ?>
    </select>
    // for input text
    <input type="text" id="testid">
    // submit button
       <input type="submit" name="lookupSubmit">
  </form>
 </body>
 </html>

and your dataGet.php file as bellow

     <?php

   $conn = mysqli_connect("localhost","root","","test_db");

        $reg_number=$_POST['reg_number'];

   $query = "select * from AgencyName where AgencyName_id = '$reg_number'" ;
    $result=mysqli_query($conn, $query);

    $data =  mysqli_fetch_assoc($result);
   // print_r($data);
      echo json_encode($data);
     exit();


    ?>
     just ccheck your table name and all will work

这篇关于在php jQuery中根据下拉列表选择点击一个按钮时填写文本框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆