星空2020 2022-09-08 23:19 采纳率: 64.1%
浏览 64
已结题

input元素的值,如何实时传递给PHP 后台作为查询参数输出json数据

name值为自动生成的,会自动变化。
如何在不点击不提交的情况下,此name值作为参数实时传递给PHP后台查询数据?生成json作b,c,d,f下拉框联动值,g,h的值由前b,c,d,f联动选择后直接赋值到input框,无需下拉选择,即数据库中g,h最终是一个值无需选择。
前台html

<input id="name" name="name" class="layui-input"> 

<select name="b" id="b" lay-verify="required"  lay-filter="b" class="layui-input">
                                <option value="">请选择组别</option>
                                </select>
<select name="c" id="c" lay-verify="required"  lay-filter="c" class="layui-input">
                                <option value="">请选择区域</option>
                                </select>
<select name="d" id="c" lay-verify="required"  lay-filter="d" class="layui-input">
                                <option value="">请选择负责人</option>
                                </select>
<select name="f" id="f" lay-verify="required"  lay-filter="f" class="layui-input">
                                <option value="">请选择职务</option>
                                </select>
<input id="g" name="g" class="layui-input"> 
<input id="h" name="h" class="layui-input"> 


<script type="text/javascript">
 $('#name').bind('input propertychange', function() {
        var name= $(this).val(); //传递参数
         $.ajax({
            url: 'demo66.php',
            type: 'get',
            data: 'name=' + name,            
            success:  function(data){
                //b,c,d,f如何实现下拉框联动???????
                }
            },
            dataType: 'json'
        });
    });
</script>
</script> 

demo.PHP后台

<?php
//如果无返回空 
  if(empty($_GET['name'])) {
    echo 0;
    exit();
} else {
    $name= $_GET['name'];
} ;  
 try {
  $pdo = new PDO('mysql:host=127.0.0.1;dbname=demo;port=3306', 'root', 'root');
} catch (PDOException $e) {
  die('connet error :' . $e->getMessage());
};
$pdo->exec('set names utf8');
$res = $pdo->query("select id,name,team,area,mag,leader,g,h from tb where name='$name' )")->fetch(PDO::FETCH_ASSOC);
 //单一的用fetch而不是fetchAll
//如果无则返回空
if(empty($res)) {
     echo 0;
} else {
    echo json_encode($res);
}
  • 写回答

2条回答 默认 最新

  • 崽崽的谷雨 2022-09-09 09:09
    关注

    实时 的 那 建议 长链接 。webscoket 要不然就是 轮询 (也就是 定时器 不停的请求)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月23日
  • 已采纳回答 9月15日
  • 修改了问题 9月11日
  • 修改了问题 9月11日
  • 展开全部

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效