`
lucene3212
  • 浏览: 138012 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论
阅读更多

    <span style="font-family: Times New Roman; font-size: 16px;">1 、实现省市的二级无刷新联动选择省名连接服务器动态加载市名(list.jsp)</span>

<span style="font-family: Times New Roman; font-size: 16px;"><%@ page language="java" pageEncoding="gbk"%><br>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><br>
<html><br>
<head><br>
<title>省市联动</title><br>
<meta http-equiv="pragma" content="no-cache"><br>
<meta http-equiv="cache-control" content="no-cache"><br>
<meta http-equiv="expires" content="0"> <br>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><br>
<meta http-equiv="description" content="This is my page"><br>
<script type="text/javascript"><br>
var xhr;<br>
function change(provinceId){<br>
//如果选择"==请选择==" 清空城市下拉列表<br>
if(provinceId=='0'){<br>
clearCity();<br>
return;<br>
}<br>
//创建XMLHttpRequest对象<br>
createXmlHttp();<br>
//设置回调函数<br>
xhr.onreadystatechange = response;<br>
//初始化<br>
xhr.open('GET','ListServlet.do?provinceId='+provinceId,true);<br>
//设置不使用缓存<br>
xhr.setRequestHeader("If-Modified-Since","0");<br>
//发送请求<br>
xhr.send(null);<br>
}<br><br>
function response(){<br>
var city = document.getElementById("city");<br>
if(xhr.readyState == 4 &amp;&amp; xhr.status == 200 ){<br>
var s = xhr.responseText;<br>
var citys = s.split(",");<br>
clearCity();<br>
for(var i=0;i<citys.length;i++){<br>
city.options[city.options.length] = new Option(citys[i],citys[i]);<br>
}<br>
}<br>
}<br><br>
function createXmlHttp(){<br>
//非IE浏览器创建XmlHttpRequest对象<br>
  if(window.XmlHttpRequest){<br>
xhr = new XmlHttpRequest();<br>
}<br>
//IE浏览器创建XmlHttpRequest对象<br>
if(window.ActiveXObject){<br>
  try{<br>
  xhr = new ActiveXObject("Microsoft.XMLHTTP"); <br>
  }catch(e){<br>
  xhr = new ActiveXObject("msxml2.XMLHTTP");<br>
  }<br>
}<br>
}<br><br>
//清空城市下拉列表<br>
function clearCity(){<br>
var city = document.getElementById("city");<br>
city.options.length = 0;<br>
city.options[0] = new Option('==请选择==','0');<br>
}<br><br>
</script><br>
</head><br><br>
<body><br>
<h1>省市联动</h1><hr><br>
<h3>Where Are You From ?</h3><br>
省份:<select id="province" onchange="change(this.value)"><br>
<option value="0">==请选择==</option><br>
<option value="1">浙江</option><br>
<option value="2">江苏</option><br>
<option value="3">湖北</option><br>
<option value="4">湖南</option><br>
<option value="5">广东</option><br>
</select><br>
城市:<select id="city"><br>
<option>==请选择==</option><br>
</select><br>
</body><br>
</html><br>
2、处理逻辑的servlert类 ListServlet.java</span>

<span style="font-family: Times New Roman; font-size: 16px;">package com.test.ajax;</span>

<span style="font-family: Times New Roman; font-size: 16px;">import java.io.IOException;<br>
import java.io.PrintWriter;<br>
import java.util.*;</span>

<span style="font-family: Times New Roman; font-size: 16px;">import javax.servlet.ServletException;<br>
import javax.servlet.http.HttpServlet;<br>
import javax.servlet.http.HttpServletRequest;<br>
import javax.servlet.http.HttpServletResponse;</span>

<span style="font-family: Times New Roman; font-size: 16px;">public class ListServlet extends HttpServlet {</span>

<span style="font-family: Times New Roman; font-size: 16px;">private static final long serialVersionUID = 1L;<br>
public static Map<String,List<String>> map= new HashMap<String,List<String>>();<br><br>
public void init() throws ServletException{<br>
List<String> list = new ArrayList<String>();<br>
list.add("杭州");<br>
list.add("绍兴");<br>
list.add("宁波");<br>
list.add("台州");<br>
map.put("1", list);<br>
list = new ArrayList<String>();<br>
list.add("南京");<br>
list.add("苏州");<br>
list.add("常州");<br>
list.add("无锡");<br>
map.put("2", list);<br>
list = new ArrayList<String>();<br>
list.add("武汉");<br>
list.add("鄂州");<br>
list.add("荆州");<br>
list.add("十堰");<br>
map.put("3", list);<br>
list = new ArrayList<String>();<br>
list.add("长沙");<br>
list.add("岳阳");<br>
list.add("常德");<br>
list.add("张家界");<br>
map.put("4", list);<br>
list = new ArrayList<String>();<br>
list.add("广州");<br>
list.add("珠海");<br>
list.add("深圳");<br>
list.add("东莞");<br>
map.put("5", list);<br>
}</span>

<span style="font-family: Times New Roman; font-size: 16px;">protected void doGet(HttpServletRequest request, HttpServletResponse response)<br>
throws ServletException, IOException {<br>
String provinceId = request.getParameter("provinceId");<br>
List<String> list = map.get(provinceId);<br>
StringBuffer sb = new StringBuffer();<br>
if(list!=null){<br>
for(String s: list) {<br>
sb.append(s).append(",");<br>
}<br>
if(!list.isEmpty()){<br>
sb.deleteCharAt(sb.length()-1);<br>
}<br>
}<br><br>
response.setContentType("test/html;charset=utf-8");<br>
PrintWriter out = response.getWriter();<br>
out.print(sb.toString());<br>
out.close();<br>
}</span>

<span style="font-family: Times New Roman; font-size: 16px;">protected void doPost(HttpServletRequest request, HttpServletResponse response)<br>
throws ServletException, IOException {<br>
doGet(request, response);<br>
}<br>
}<br></span>

<span style="font-family: Times New Roman; font-size: 16px;">3、web.xml 信息配置</span>

<span style="font-family: Times New Roman; font-size: 16px;"><?xml version="1.0" encoding="UTF-8"?><br>
<web-app version="2.4" <br>
xmlns="</span><span style="font-family: Times New Roman; font-size: 16px;">http://java.sun.com/xml/ns/j2ee</span><span style="font-family: Times New Roman; font-size: 16px;">"<br>
xmlns:xsi="</span><span style="font-family: Times New Roman; font-size: 16px;">http://www.w3.org/2001/XMLSchema-instance</span><span style="font-family: Times New Roman; font-size: 16px;">"<br>
xsi:schemaLocation="</span><span style="font-family: Times New Roman; font-size: 16px;">http://java.sun.com/xml/ns/j2ee</span><br><span style="font-family: Times New Roman; font-size: 16px;"></span><span style="font-family: Times New Roman; font-size: 16px;">http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd</span><span style="font-family: Times New Roman; font-size: 16px;">"><br>
<servlet><br>
<servlet-name>myServlet</servlet-name><br>
<servlet-class>com.test.ajax.ListServlet</servlet-class><br>
</servlet><br>
<servlet-mapping><br>
<servlet-name>myServlet</servlet-name><br>
<url-pattern>/ListServlet.do</url-pattern><br>
</servlet-mapping><br>
<welcome-file-list><br>
<welcome-file>list.jsp</welcome-file><br>
</welcome-file-list><br>
</web-app></span>

<span style="font-family: Times New Roman; font-size: 16px;">4、截图显示</span>

<span style="font-family: Times New Roman; font-size: 16px;"><img alt="" src="http://hi.csdn.net/attachment/201110/13/0_1318494126FAH2.gif"></span>

 
0
0
分享到:
评论

相关推荐

    省市二级联动JS 代码

    省市二级联动JS代码是一种常见的前端开发技术,常用于创建具有交互性的网页表单,特别是当用户需要选择地理位置信息时。这种技术使得用户在选择省份后,下拉菜单会自动更新为对应省份的城市列表,提供了良好的用户...

    php代码实现二级联动下拉菜单效果

    在网页设计中,二级联动下拉菜单是一种常见的交互元素,常用于分类选择或者地区筛选等场景。这种功能的实现通常涉及到前端和后端的交互,其中PHP作为后端语言,负责处理数据并返回给前端。本篇文章将详细介绍如何...

    jQuery移动端省市二级联动选择插件.zip

    "jQuery移动端省市二级联动选择插件"是专为解决这个问题而设计的一个工具,它利用JavaScript和jQuery库,提供了高效、易用的解决方案。这个插件允许用户在手机或平板设备上方便地选择省份和城市,极大地提升了用户...

    ASP.NET AJAX 省市县三级联动

    ASP.NET AJAX 省市县三级联动是Web开发中常见的功能,尤其在地址选择、区域划分等场景下,用户需要从省、市、县(区)的下拉列表中逐级选择。这一技术主要利用了ASP.NET AJAX框架的异步更新和页面局部刷新的能力,为...

    SSM+EasayUI实现省市二级联动

    在IT行业中,"SSM+EasayUI实现省市二级联动"是一个常见的前端与后端交互功能,常用于网站或应用程序的地址选择。SSM是指Spring、SpringMVC和MyBatis这三个Java Web开发框架的组合,它们各自负责不同的职责:Spring...

    Bootstrap实现省市区三级联动(亲测可用)

    ### 知识点二:省市区三级联动的实现逻辑 省市区三级联动是指用户在选择省份之后,城市列表会相应地更新为该省份下的城市;同理,在选择城市之后,区域列表会更新为该城市下的区县。这个功能在网页表单中非常常见,...

    json格式省市二级联动xml文件

    总之,"city.xml"文件是用于实现省市二级联动的XML数据源,通过解析和处理XML,我们可以构建出交互式的省市选择器,提升用户的输入体验。在实际项目中,根据性能和需求,可以灵活选择XML或JSON作为数据交换格式。

    ajax,struts2,json实现省市区三级联动源码含全国省市区数据库

    “ajax,struts2,json实现省市区三级联动源码含全国省市区数据库”这一标题揭示了这个压缩包包含的是一项使用AJAX、Struts2和JSON技术来实现的省市区三级联动功能的源代码。这项技术常用于web应用中,允许用户在选择...

    省市二级联动的EasyUI及jar包

    标题 "省市二级联动的EasyUI及jar包" 暗示了这个压缩包可能包含用于实现中国省市二级联动效果的EasyUI组件和相关的Java库文件(jar包)。EasyUI是一个基于jQuery的轻量级前端框架,它提供了丰富的UI组件,如表格、...

    jQuery ajax实现省市县三级联动

    下面我们用Jquery,ajax,做一个省,市,县的三级联动: 下面是我做三级联动下拉的步骤以及逻辑 第一步:先做一个省市区表格 第二步:建个PHP页面显示用我是在&lt;body&gt;里放用来接收要显示的省市区表格信息,里面...

    jquery+php+mysql省市县Ajax三级联动代码

    在网页开发中,三级联动是一种常见的交互设计,用于实现如省市县选择的下拉菜单功能。这个"jquery+php+mysql省市县Ajax三级联动代码"是实现这种功能的一个实例,结合了前端JavaScript库jQuery、后端PHP编程语言以及...

    省市联动二级菜单

    "省市联动二级菜单"是一个常见的前端开发功能,主要用于在网页上实现省份与城市之间的联动选择。这个功能在很多网站的地址填写、用户信息完善等场景中广泛应用。在给定的压缩包文件中,可能包含了实现这一功能的源...

    php省市三级联动

    本文将深入探讨“PHP省市三级联动”的实现方法,以及如何结合AJAX和ThinkPHP框架来构建这一功能。 首先,我们要理解什么是“省市三级联动”。在网页设计中,这种功能通常用于地址选择,例如用户在填写个人信息时...

    利用数据库实现的省市二级联动的ASP源程序 安徽机电职业技术学院陈伟

    实现省市二级联动的步骤大致如下: 1. 创建数据库和表:设计数据库结构,包括省份表和城市表,确保它们有适当的关联字段。 2. 编写ASP页面:创建HTML表单,包含省份和城市的选择下拉框,以及提交按钮。ASP代码将...

    mvc4实现二级联动

    通过以上步骤,你就可以在ASP.NET MVC4环境中实现一个简单的省市二级联动效果。当然,实际项目中可能需要考虑更多因素,如错误处理、数据缓存、异步加载优化等,但基本思路和以上代码类似。希望这个示例能帮助你理解...

    用DropDownList控件绑定XML数据实现省市区三级联动

    在ASP.NET开发中,我们经常需要处理用户界面中的选择交互,比如实现省市区三级联动的效果。这通常用于地址填写或配送区域的选择等场景。本文将详细介绍如何利用DropDownList控件结合XML数据源来实现这一功能。 首先...

    二级联动下拉框

    在网页设计和开发中,"二级联动下拉框"是一种常见的交互元素,它通常用于实现多级选择或者关联数据的筛选。例如,在选择省份时,第一个下拉框会选择省份,当选择一个省份后,第二个下拉框会动态加载并显示该省份的...

    兼容各浏览器的省市二级联动菜单

    在IT行业中,构建一个兼容各种浏览器的省市二级联动菜单是一项常见的需求,特别是在网页开发中。这个主题涉及到前端技术,特别是JavaScript、HTML和CSS,以及数据处理。以下将详细阐述实现这个功能所需的知识点。 ...

    省市县三级联动源码

    省市县三级联动源码是一种常见的前端开发技术,用于在网页上实现地区选择功能,用户可以选择国家、省份、城市,直到具体的区县。这种技术在注册、填写地址等场景中非常常见,尤其在中国,由于行政区域划分较为复杂,...

Global site tag (gtag.js) - Google Analytics