首页 web前端 js教程 实现无刷新下拉联动的Ajax+Servlet(附代码)

实现无刷新下拉联动的Ajax+Servlet(附代码)

Mar 30, 2018 pm 04:57 PM
下拉 联动

这次给大家带来实现无刷新下拉联动的Ajax+Servlet(附代码),实现实现无刷新下拉联动的Ajax+Servlet的注意事项有哪些,下面就是实战案例,一起来看一下。

下拉联动的功能可以说非常的常用,例如在选择省、市等信息的时候;或者在选择大类、小类的时候。总之,下拉联动很常用。今天就跟大家分享一个简单的二级下拉联动的功能。

大类下拉框:页面加载的时候就初始化大类的下拉选项,通过后台代码去数据库里面取得数据(当然像省市这样不变的内容可以直接给值),然后加载到下拉选项中。

<select name="region" class="select1" id="BigClass" onchange="selectProv(this)"> 
  <option value="0">--全部--</option> 
  <% 
    Map map = ClientManager.getInstance().getRegionList(); 
    for (Iterator iter=map.entrySet().iterator(); iter.hasNext();) { 
      Map.Entry entry = (Map.Entry)iter.next();                     
  %> 
      <option value="<%=entry.getKey() %>"><%=entry.getValue() %></option> 
  <% 
    } 
  %>   
</select>
登录后复制

小类下拉框:小类的下拉选项是通过Ajax将所选大类的内容异步提交到一个Servlet,然后返回相应的小类内容,最后加载到小类下拉选项中。

<select name="province" class="select1" id="SmallClass"> 
  <option value="0">--全部--</option> 
</select>
登录后复制

获取并加载小类下拉框的JS代码:

<script type="text/javascript"> 
  function selectProv(field) { 
    var xmlHttp = null; 
    //表示当前浏览器不是ie,如ns,firefox 
    if(window.XMLHttpRequest) { 
      xmlHttp = new XMLHttpRequest(); 
    } else if(window.ActiveXObject) { 
      xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
      var url = "${pageContext.request.contextPath}/servlet/SelectProvServlet?regionId=" + trim(field.value) + "&time=" + new Date().getTime(); 
     
    //设置请求方式为GET,设置请求的URL,设置为异步提交 
    xmlHttp.open("GET", url, true); 
     
    xmlHttp.onreadystatechange=function() { 
      //Ajax引擎状态为成功 
      if(xmlHttp.readyState == 4) { 
        //HTTP协议状态为成功 
        if(xmlHttp.status == 200) { 
          var doc = xmlHttp.responseXML; 
          var items = doc.getElementsByTagName("item"); 
          //取得小类下拉列表 
          var provSelect = document.getElementById("SmallClass"); 
          //清除小类下拉列表中的值 
          provSelect.options.length = 0; 
          var o = new Option("--全部--", 0); 
          provSelect.add(o); 
          for (var i=0; i<items.length; i++) { 
            var id =items[i].childNodes[0].firstChild.nodeValue; 
            var name = items[i].childNodes[1].firstChild.nodeValue; 
            var o = new Option(name, id); 
            provSelect.add(o); 
          } 
        }else { 
          alert("请求失败,错误码=" + xmlHttp.status); 
        } 
      } 
    }; 
     
    //将设置信息发送到Ajax引擎 
    xmlHttp.send(null); 
  } 
</script>
登录后复制

具体怎么从数据库里取数据就不在这里赘述了,就是一个普通的查询,比较简单。二级联动、三级联动、多级联动都是一样的,就是预先加载一个下拉框的内容,然后,根据第一个的所选内容加载后面的下拉框选项,以此类推。掌握了二级联动,其他的也就不在话下了,也就是多加几个下拉框的事儿。

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

在ajax中用josnp接收josn数据步骤详解

前端ajax请求的优雅方案怎么实现

以上是实现无刷新下拉联动的Ajax+Servlet(附代码)的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

征途IPx经典动画《西游记》 西行征途无畏无惧 征途IPx经典动画《西游记》 西行征途无畏无惧 Jun 10, 2024 pm 06:15 PM

穿越苍茫征途,踏足西游之境!今日,征途IP正式宣布将与央视动画《西游记》展开跨界合作,共同打造一场融合了传统与创新的文化盛宴!此次携手,不仅标志着两大国产经典品牌的深度合作,更彰显了征途系列在弘扬中国传统文化道路上的不懈努力与坚持。征途系列自诞生以来,便凭借其深厚的文化底蕴和多元化的游戏玩法,受到玩家们的喜爱。在文化传承方面,征途系列更是始终保持着对中国传统文化的敬意与热爱,将传统文化元素巧妙地融入游戏,为玩家们带来了更多的乐趣和启发。而央视动画《西游记》则是陪伴了一代又一代人成长的经典之作,其

双厨狂喜!《阴阳师》X《初音未来》联动3月6日开启 双厨狂喜!《阴阳师》X《初音未来》联动3月6日开启 Feb 22, 2024 pm 06:52 PM

网易《阴阳师》手游在今日宣布,阴阳师×初音未来限定联动将于3月6日正式开始。联动限定SSR初音未来(CV:藤田咲)、SSR镜音铃·连(CV:下田麻美)即将降临平安京!联动线上特别演出活动3月9日在游戏内正式开启~

炸鸡大业,不容差池!《逆水寒》联动肯德基尬上天,玩家社死'闻鸡起舞” 炸鸡大业,不容差池!《逆水寒》联动肯德基尬上天,玩家社死'闻鸡起舞” Apr 17, 2024 pm 06:34 PM

日期,《逆水寒》官宣将于4月19号-5月12号与肯德基展开联动,但联动的具体内容却让很多人蚌埠住了,连番直说“尬上天了”、“要社死了”!原因就出在这次主题活动的口号上,曾经见识过《原神》《崩铁》肯德基联动的小伙伴肯定有印象,什么“异世相遇、尽享美味”,到了《逆水寒》这里就成了:对店员喊出「神候府查案,尔等何人?」店员需回答「炸鸡大业,不容差池!」对员工的培训指南:绝对不能笑!不止这个,这次联动还办起了舞蹈大赛,到主题店做出“闻‘基’起舞”舞蹈动作,还能获得一个摇摇乐小立牌。尬,太尬了!但就是要这

经典重聚,逆转时空《天龙2》X《大话西游》电影联动决定 经典重聚,逆转时空《天龙2》X《大话西游》电影联动决定 Mar 28, 2024 pm 04:40 PM

经典重聚,逆转时空。《天龙2》手游与经典电影《大话西游》携手定档4月11日!恰逢《天龙2》手游周年庆典,邀请大家共同重温经典回忆,再次见证至尊宝与紫霞至死不渝的传奇故事。七彩祥云要有,金甲圣衣也要有当那句“般若波罗蜜”回荡在耳边时,你是否会想起紫霞留在至尊宝心底的那一滴眼泪?一眼万年,却难逃宿命之劫。纵使万劫不复,吾爱至死不渝。大话西游联动外观【一眼万年】【天意】将随周年庆版本同步上线。愿你可以身披金甲圣衣又或可以邂逅自己的盖世英雄,重回至情至性的青春年少。五百年守护,真爱至死不渝那日偶遇洛阳说

《暗黑破坏神:不朽》X《仙剑奇侠传》联动决定! 《暗黑破坏神:不朽》X《仙剑奇侠传》联动决定! Apr 17, 2024 pm 02:58 PM

网易游戏在今天宣布,《暗黑破坏神:不朽》决定联动《仙剑奇侠传》。4月24日“一剑逍遥”开启不朽修仙新时代!一个是西方魔幻的经典之作,一个是东方仙侠的永恒回忆,暗黑宇宙与仙剑江湖时空交错,两大IP携手斩妖除魔。4月24日,关于正义与侠道的不灭传说将在庇护之地上演!

Java开发表单字段的联动与依赖功能 Java开发表单字段的联动与依赖功能 Aug 07, 2023 am 08:41 AM

Java开发表单字段的联动与依赖功能引言:在Web开发中,表单是经常使用到的一种交互方式,用户可以通过表单填写信息并提交,而繁琐、冗余的表单字段选择操作往往会给用户带来不便。因此,表单字段的联动和依赖功能被广泛应用于提升用户体验和操作效率。本文将介绍如何使用Java开发实现表单字段的联动和依赖功能,并提供相应的代码示例。一、表单字段联动功能的实现表单

元梦之星奥特曼正版联动:赛罗泽塔共鸣奥特之力,迸发热血火花! 元梦之星奥特曼正版联动:赛罗泽塔共鸣奥特之力,迸发热血火花! Feb 24, 2024 pm 02:25 PM

元梦之星奥特曼正版联动系列,赛罗泽塔同款时装细节今日大公开,相信大家已经期待很久了,与赛罗泽塔联名时装已于今日上线,一起跟随小编来看看本次奥特曼联动的更多细节,希望能够给你带来帮助。元梦之星奥特曼正版联动:赛罗泽塔共鸣奥特之力,迸发热血火花!赛罗作为光之国新一代的年轻奥特战士终极赛罗警备队的队长赛罗奥特曼不羁又善良,热情又奔放“有我在身边,你还不放心吗?赛罗会尽全力保护星宝星宝们快穿上赛罗奥特曼时装,与赛罗一起奋勇战斗吧!细节展示建模动作展示出场动作待机动作泽塔我才不是三分之一的半吊子,我是宇宙

如何结合ECharts和php接口实现多图表联动的统计图展示 如何结合ECharts和php接口实现多图表联动的统计图展示 Dec 18, 2023 am 10:07 AM

在数据可视化的领域中,ECharts作为一款被广泛使用的前端图表库,其强大的数据可视化功能受到了各个行业的追捧。在实际项目中,经常会遇到需要对多个图表进行联动展示的情况,本文将介绍如何结合ECharts和PHP接口实现多图表联动的统计图展示,并给出具体的代码示例。一、前置技能在本文的实践中,需要掌握以下技能:HTML、CSS、JavaScript的基础知识;

See all articles