星空2020 2022-09-08 15: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 01:09
    关注

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    星空2020 2022-09-11 06:08

    ajax定时器轮询具体如何写?
    相当于定时将name值传给后台作为php查询的参数

    回复
    崽崽的谷雨 回复 星空2020 2022-09-11 08:48

    就是一个定时器不停地请求接口

    回复
    星空2020 回复 崽崽的谷雨 2022-09-11 10:14

    哦,另外,下拉框联动如何写呢,ajax返回的json格式数据做下拉框联动

    回复
    展开全部5条评论
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 9月22日
  • 已采纳回答 9月15日
  • 修改了问题 9月11日
  • 修改了问题 9月11日
  • 展开全部
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部