总结
豆包 AI 助手文章总结

javascript - 如何根据下拉菜单选择后通过ajax获取后台数据并且不刷新页面

php中文网
发布: 2016-12-05 13:44:17
原创
2370人浏览过

我想通过一组下拉菜单,然后取选择其中的一个的时候,根绝选择的列表标题筛选出符合条件的列表,展示在下面的页面中,请问代码怎么实现

回复内容:

我想通过一组下拉菜单,然后取选择其中的一个的时候,根绝选择的列表标题筛选出符合条件的列表,展示在下面的页面中,请问代码怎么实现

$('select').change(function(){//监控select的change事件
    var dom = document.getElementById('id'),
    data = dom.options[dom.selectedIndex].value;//选中的option的value;

    ajax({});
    
});
登录后复制

大概有如下几个步骤:

  1. 获取到选中下拉菜单的值(ID/标题,一般情况下会获取ID,到后台根据这个ID到数据库获取对应的数据)

  2. 发送到后端

    立即学习Java免费学习笔记(深入)”;

  3. 后端根据前端发送的参数取值,查询数据库,然后组装成你想要的格式类型,返回给前端

  4. 前端实行html操作(内容更新)

  5. 代码实现如下(用的jQuery)

<script type="text/javascript">
    $("select").change(function() {
        var title = $(this).text();  // 1、获取选择下拉框的标题
        //var id  = $(this).val();  获取选中的ID值
        var url   = "";  //这里填写后端的url 
        $.ajax({   //2、发送给后端
            url: url, 
            type: 'POST',  //设置发送的方式 这里假设为POST
            dataType: 'html',  //返回的数据类型
            data: {title: title},  //把选中的标题发给后端
            success:function(data) {
                // 4、这里写成功后更新页面的操作
            }
        })
    });
</script>
登录后复制
<?php
$title = $_POST['title']; //接收参数  选中的ID或者标题

//3、根据这个标题或者ID 去数据库查询匹配到的相关的内容 然后根据需求组装成html格式

echo $html;  //返回给前端
exit;
登录后复制

大概分三步:

1、ajax请求后端接口,接口返回数据。(一般返回json)
2、ajax在回调函数里面,解析数据。
3、把数据写到页面,看你情况用html还是append
登录后复制

好宽泛的问题;先了解以下“js模板”把;

$("select").onchange(function(){
    console.log($(this).val());//这里的this.val 就是当前选中的option的val 根据这个val 进行逻辑判断
})
登录后复制

建议再log 那里在写一个函数传value 过去进行逻辑操作

楼上回答的都很好,无非是javascript的onchange事件

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
豆包 AI 助手文章总结
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号