ajax+jQuery实现级联显示地址的方法


Posted in Javascript onMay 06, 2015

本文实例讲述了ajax+jQuery实现级联显示地址的方法。分享给大家供大家参考。具体实现方法如下:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"
contentType="text/html; charset=utf-8"
%>
<html>
<head>
 <title>初始化HELLO</title>
 <script type="text/javascript" src="../../js/jquery.js"></script>
 <script type="text/javascript">
 $(document).ready(function(){
  var str1='${str}';
  var strArr=str1.split(",");
  var k;
  for(k=0;k<strArr.length;k++)
   {
   $.ajax({
   async:false,//原来是这样,不然AJAX是一起发送的,加上这个的话,就保证这个请求有结果,才会发下一个请求
   url:'init.action',//请求的URL
   cache: false, //不从缓存中取数据
   data:{pid:strArr[k]},//发送的参数
   type:'Get',//请求类型
   dataType:'json',//返回类型是JSON
   timeout:20000,//超时
   error:function()//出错处理
   {
   alert("程序出错!");
   },
   success:function(json)//成功处理
   {
    var len=json.length;//得到查询到数组长度
   if(strArr[k]=="0")//顶目属地
   {   
    $("<select id='no1' style='width:80px' onchange='show()'></select>").appendTo("#content");//在content中添加select元素
    $("<option value='-1'>请选择</option>").appendTo("#no1");
    for(var i=0;i<len;i++)//把查询到数据循环添加到select中
    {
    $("<option value="+json[i].channelId+">"+json[i].channelName+"</option>").appendTo("#no1");
    }
    }
    else
    {
    $("<select stype='width:80px' onchange='show()'></select>").appendTo("#content");
    $("<option value='-1'>请选择</option>").appendTo("#content>select:last");
    for(var i=0;i<len;i++)
    {
     $("<option value="+json[i].channelId+">"+json[i].channelName+"</option>").appendTo("#content>select:last");
    }
     $("#content>select:eq("+(k-1)+")>option[@value="+strArr[k]+"]").attr("selected","true");//设置选中
     if(len==0)//最后一级,没东西就把它给删除
     {
     $("#content>select:last").remove();
     }
    }
   }
  });
  }//for循环的结尾
 });
 function show()
 {
 var obj=event.srcElement;//取得当前事件的对象,也就是你点了哪个select,这里得到的就是那个对象
 var currentObj=$(obj);//将JS对象转换成jQuery对象,这样才能使用其方法
 var s1=$(obj).nextAll("select");//找到当前点击的后面的select对象
 s1.each(function(i){
 $(this).remove();//循环把它们删除
 });
 var value1=$(obj).val();
 $.ajax({
 url:'init.action',
 cache:false,
 data:{pid:value1},
 type:'Get',
 dataType:'json',
 timeout:20000,
 error:function()
 {
  alert("出错啦");
 },
 success:function(json)
 {
  var len=json.length;
  if(len!=0)
  {
  $("<select style='width:80px' onchange='show()'></select>").appendTo("#content");
   $("<option value='-1'>请选择</option>").appendTo("#content>select:last");
   for(var i=0;i<len;i++)
   {
   $("<option value="+json[i].channelId+">"+json[i].channelName+"</option>").appendTo("#content>select:last");
   }
  }
 }
 });
 }
 </script>
</head>
<body>
 <h1>
 显示管理员信息
 </h1>
<table width="50%" border="1">
<tr>
<td>管理员编号</td><td><input type="text" value="${admin.adminId}"></td>
</tr>
<tr>
<td>管理员帐号</td><td><input type="text" value="${admin.adminAccount}"> </td>
</tr>
<tr>
<td>管理员姓名</td><td><input type="text" value="${admin.adminName}"> </td>
</tr>
<tr>
<td>管理员密码</td><td><input type="text" value="${admin.password}"> </td>
</tr>
<tr>
<td>管理员属地</td><td><input type="text" value="${admin.channelid}"> </td>
</tr>
</table>
 <div id="content"
 style="width: 500px; border: 1px; border-style: solid; background-color: lightblue;">
 </div>
</body>
</html>

希望本文所述对大家的jquery程序设计有所帮助。

Javascript 相关文章推荐
用cookies实现的可记忆的样式切换效果代码下载
Dec 24 Javascript
IE8 下的Js错误HTML Parsing Error...
Aug 14 Javascript
javascript学习笔记(十三) js闭包介绍(转)
Jun 20 Javascript
js为数字添加逗号并格式化数字的代码
Aug 23 Javascript
jQuery选择器源码解读(五):tokenize的解析过程
Mar 31 Javascript
BootStrap智能表单实战系列(八)表单配置json详解
Jun 13 Javascript
JS去除重复并统计数量的实现方法
Dec 15 Javascript
bootstrap laydate日期组件使用详解
Jan 04 Javascript
webpack4.x打包过程详解
Jul 18 Javascript
layui加载数据显示loading加载完成loading消失的实例代码
Sep 23 Javascript
uni-app 支持多端第三方地图定位的方法
Jan 03 Javascript
Ajax请求超时与网络异常处理图文详解
May 23 Javascript
javascript十六进制及二进制转化的方法
May 06 #Javascript
js拆分字符串并将分割的数据放到数组中的方法
May 06 #Javascript
Juery解决tablesorter中文排序和字符范围的方法
May 06 #Javascript
javascript操作表格排序实例分析
May 06 #Javascript
js获取form的方法
May 06 #Javascript
js给selected添加options的方法
May 06 #Javascript
js表格排序实例分析(支持int,float,date,string四种数据类型)
May 06 #Javascript
You might like
php 连接mssql数据库 初学php笔记
2010/03/01 PHP
thinkphp 一个页面使用2次分页的实现方法
2013/07/15 PHP
php下pdo的mysql事务处理用法实例
2014/12/27 PHP
php使用ftp实现文件上传与下载功能
2017/07/21 PHP
Jquery选择器 $实现原理
2009/12/02 Javascript
JQuery Tab选项卡效果代码改进版
2010/04/01 Javascript
Javascript引用指针使用介绍
2012/11/07 Javascript
javascript实现文字图片上下滚动的具体实例
2013/06/28 Javascript
js统计录入文本框中字符的个数并加以限制不超过多少
2014/05/23 Javascript
基于JS实现导航条之调用网页助手小精灵的方法
2016/06/17 Javascript
JS+DIV实现的卷帘效果示例
2017/03/22 Javascript
JS分页的实现(同步与异步)
2017/09/16 Javascript
vue-cli中打包图片路径错误的解决方法
2017/10/26 Javascript
使用vue-route 的 beforeEach 实现导航守卫(路由跳转前验证登录)功能
2018/03/22 Javascript
微信小程序拍照和摄像功能实现方法示例
2019/02/01 Javascript
ES6中的迭代器、Generator函数及Generator函数的异步操作方法
2019/05/12 Javascript
史上最为详细的javascript继承(推荐)
2019/05/18 Javascript
详解Vue中Axios封装API接口的思路及方法
2020/10/10 Javascript
python 多维切片之冒号和三个点的用法介绍
2018/04/19 Python
matplotlib调整子图间距,调整整体空白的方法
2018/08/03 Python
Python编程在flask中模拟进行Restful的CRUD操作
2018/12/28 Python
详解PANDAS 数据合并与重塑(join/merge篇)
2019/07/09 Python
python的re模块使用方法详解
2019/07/26 Python
Python统计学一数据的概括性度量详解
2020/03/03 Python
python3中celery异步框架简单使用+守护进程方式启动
2021/01/20 Python
CSS3轻松实现圆角效果
2017/11/09 HTML / CSS
C语言编程练习
2012/04/02 面试题
销售人员自我评价怎么写
2013/09/19 职场文书
事业单位辞职信范文
2014/01/19 职场文书
大学生逃课检讨书
2015/05/04 职场文书
退休教师欢送会致辞
2015/07/31 职场文书
2016应届大学生自荐信模板
2016/01/28 职场文书
2019升学宴主持词范本5篇
2019/10/09 职场文书
Linux安装Nginx步骤详解
2021/03/31 Servers
解决golang post文件时Content-Type出现的问题
2021/05/02 Golang
java开发双人五子棋游戏
2022/05/06 Java/Android