在博客园学习了很多实用的东西,现在该慢慢开始自己写写博客文章, 由于本人水平有限,刚走出校园的小菜鸟,另外,文章在表述和代码方面如有不妥之处,欢迎批评指正。留下你

的脚印,欢迎评论!

有什么问题,可以互相探讨,希望对各位有所帮助。开始讲东西吧

一个现实城市下拉框的界面

html代码:

 <table>
<tr>
<td><h5>城市下拉框</h5></td>
<td>
<select id="top" style="width:130px">
<option>请选择省市/其他...</option>
</select>
<select id="center" style=" width:130px">
<option >请选择城市/其他...</option>
</select>
<select id="button" style=" width:130px">
<option>请选择县/区...</option>
</select>
</td>
</tr>
</table>

js代码:我这里使用的jquery操作Dom和ajax,所以要导入jquery脚本,这里就不提供了,到官方网站下载都有

<script type="text/javascript">
$(function() {
// setCity("top", "0");//页面加载时就现实数据库第一个数据,一定要加上
setCity("top", "0");
$("#top").change(function() {
// 当省级改变的时候,让市级和县级文本清空
$("#center option").remove();
$("#button option").remove();
//获得省级的id
var pid=$("#top option:selected").attr("id");
//加载该省级的市级数据
setCity("center", pid);
});
$("#center").change(function() {
//当市级改变的时候,让县级文本清空
$("#button option").remove();
//获取城市的pid
var pid=$("#center option:selected").attr("id");
//加载该省市级的县级数据
setCity("button",pid );
});
});
//selectid:select标签的id,pid数据库省级县级的pid
function setCity(selectid, pid) {
$.ajax({
url : "/code_20150406(Ajax_XStream_Json)/CtiyServlet?pid="+pid,
type : "get",
cache : false,
success : function(res) {
//注意!!!这里必须使用eval(res)函数,否则获取到的json数据无法遍历,无话获取到数据
var arr = eval(res);
//遍历返回的json数据加载到select标签;
$.each(arr, function(key, val) {
$("#" + selectid).append(
" <option id='" + val.tb_AreaId + "'>"
+ val.areaName + "</option>");
});
}
});
};
</script>

Servlet查询数据库的代码:

1.返回json数据

/**
* 收货地址=>显示城市下拉框
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=UTF-8");
//获取省级或市级的pid
int i = Integer.valueOf(request.getParameter("pid"));
//查询数据库数据(我这里是使用是DbUtils获取数据数据,这里可以自身使用的框架来查询数据)
List<tb_Area> list = dao.getbyAreaid(i);
//返回json数据:这里返回的一个JavaBBean的List集合,所以要使用JSONArray.fromObject(list)来转换json数据
response.getWriter().print(JSONArray.fromObject(list));
}
2.javabean代码
public class tb_Area {
private Integer tb_AreaId;
private String areaName;
public Integer getTb_AreaId() {
return tb_AreaId;
}
public void setTb_AreaId(Integer tb_AreaId) {
this.tb_AreaId = tb_AreaId;
}
public String getAreaName() {
return areaName;
}
public tb_Area() {
}
@Override
public String toString() {
return "tb_Area [tb_AreaId=" + tb_AreaId + ", areaName=" + areaName
+ ", areaPid=" + areaPid + "]";
}
public void setAreaName(String areaName) {
this.areaName = areaName;
}
public Integer getAreaPid() {
return areaPid;
}
public void setAreaPid(Integer areaPid) {
this.areaPid = areaPid;
}
private Integer areaPid;
}

数据库

http://pan.baidu.com/s/1gdw1Osj点击链接下载,这里是txt文件,导入数据库是用的是逗号分隔符,注意数据库子字段的命名即如图

运行下成功页面

好了 ,搞定了,要是有什么问题欢迎评论!!!

省级联动(使用ajax实现)的更多相关文章

  1. MVC实现省级联动

    前言 省级联动的效果,网上现成的都有很多,各种JS实现,Jquery实现等等,今天我们要讲的是在MVC里面,如何更方便.更轻量的实现省级联动呢? 实现效果如下: 具体实现 如图所示,在HTML页非常简 ...

  2. jQuery写省级联动列表,创造二维数组,以及如何存/调用二维数组中的数据

    jQuery写省级联动列表,创造二维数组来存放数据,然后通过each来遍历调用,通过creatTxtNode创建文本节点,通过createElement创建标签option,在通过append将文本写 ...

  3. 三级联动(ajax)

    <body> <div id="zhuti"></div> </body><script type="text/ja ...

  4. MVC二级联动使用$.ajax方法获取后端返回的字符串

    在"MVC二级联动使用$.getJSON方法"中使用$.getJSON()获取后端返回的JSon. 本篇使用jQuery的$.ajax()获取后端返回的字符串,实现二级联动.   ...

  5. 多级联动系列——ajax调用XML实现三级联动

    ajax 使用起来特别的方便,再也不操心浏览器兼容问题了.用ajax调用XML页面中的内容,来生成三级联动,OK废话不多说,跟着我一步步写吧. 首先写一个XML文件.data.xml <?xml ...

  6. 模态框的理解 ,jQ: loading,进度条, 省级联动 表单验证 插件

    模态框: 打开一个弹框 不关闭它就不能做框外的操作 必须关闭或弹出另外的弹框 加载延迟loading + 进度条只要有请求 就处理一下监控ajax 全局事件jquery: $('#box').ajax ...

  7. ComboBox联动 (AJAX BS实现)

    //从webservice中取数据ajax            Ext.Ajax.request({                url: 'WebService.asmx/GetComboxFi ...

  8. 三级联动(ajax同步)

    html <div id="frame"></div> js $(function(){ //拼接省市区下拉框 var str = `<select ...

  9. 省市联动初探AJAX操作数据

    主要学习代码: List.html <script type="text/javascript"> function GetXhr() { return new XML ...

随机推荐

  1. coreseek (sphinx)+ Mysql + Thinkphp搭建中文搜索引擎详解

      一, 前言    1,研究coreseek的动机 我有一个自己的笔记博客,经常在上面做一些技术文章分析.在查询一些文章的时候,以前只能将要查询的内容去mysql中用like模糊匹配.在文章多了的情 ...

  2. 用SQL语句添加删除修改字段_常用SQL

    1.增加字段     alter table docdsp     add dspcodechar(200)2.删除字段     ALTER TABLE table_NAME DROP COLUMNc ...

  3. VIRTUALBOX 虚拟机安装 OS X 10.9 MAVERICKS

    VIRTUALBOX 虚拟机安装 OS X 10.9 MAVERICKS 原文链接:http://bbs.weiphone.com/read-htm-tid-7625465.html 原文作者已经写的 ...

  4. linux使用rpm重装jdk

    1.卸载jdk #rpm -qa | grep gcj 如果输出没有内容,说明没有jdk,如果输出有内容,要把搜索到的文件卸载掉,命令为: #rpm -e --nodeps [上步操作输出的文件] 然 ...

  5. 10个最好的 JavaScript 动画库和开发框架

    虽然 CSS3 动画功能能够让我们以简单轻松的方式实现动画效果,但是浏览器兼容性问题让人头疼.不过不用担心,我们还有另外的武器——JavaScript,它同样可以帮助你实现各种各样的动画效果,而且借助 ...

  6. Plyr – 简单,灵活的 HTML5 媒体播放器

    Plyr 是一个简单的 HTML5 媒体播放器,包含自定义的控制选项和 WebVTT 字幕.它是只支持现代浏览器,轻量,方便和可定制的媒体播放器.还有的标题和屏幕阅读器的全面支持. 在线演示      ...

  7. 如何将List<string>转化为string

    Convert List, string. A List can be converted to a string. This is possible with the ToArray method ...

  8. BFC布局原理

    写这篇博客的初衷其实是在解决浮动的时候看到的这个方法,就想着BFC是什么,为什么可以清除浮动.结果不看不知道,一看越看越不明白,潜下心来研究看看,总结一下学习心得. 1.BFC是什么 BFC就是Box ...

  9. Sharepoint学习笔记—习题系列--70-576习题解析 -(Q84-Q87)

    Question  84You are designing a Web Part for SharePoint 2010 that must be able to be used on any sit ...

  10. Ida双开定位android so文件

    Ida双开定位的意思是先用ida静态分析so文件,然后再开一个ida动态调试so文件.因为在动态调试中ida并不会对整个动态加载的so文件进行详细的分析,所以很多函数并无法识别出来.比如静态分析中有很 ...