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 相关文章推荐
JQuery 初体验(建议学习jquery)
Apr 25 Javascript
javascript 另一种图片滚动切换效果思路
Apr 20 Javascript
createTextRange()的使用示例含文本框选中部分文字内容
Feb 24 Javascript
如何让你的Lightbox支持滚轮缩放及Base64图片
Dec 04 Javascript
jQuery siblings()用法实例详解
Apr 26 Javascript
如何快速上手Vuex
Feb 14 Javascript
JavaScript对象引用与赋值实例详解
Mar 15 Javascript
vue项目base64字符串转图片的实现代码
Jul 13 Javascript
Vue.js 图标选择组件实践详解
Dec 03 Javascript
angular4自定义组件非input元素实现ngModel双向数据绑定的方法
Dec 28 Javascript
JS实现transform实现扇子效果
Jan 17 Javascript
微信小程序用canvas画图并分享
Mar 09 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模拟post行为代码总结(POST方式不是绝对安全)
2012/02/22 PHP
php创建无限级树型菜单
2015/11/05 PHP
PHP类的声明与实例化及构造方法与析构方法详解
2016/01/26 PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
2016/11/09 PHP
利用JS解决ie6不支持max-width,max-height问题的方法
2014/01/02 Javascript
原生js实现淘宝首页点击按钮缓慢回到顶部效果
2014/04/06 Javascript
JavaScript中对象属性的添加和删除示例
2014/05/12 Javascript
jquery实现动态操作select选中
2015/02/11 Javascript
js获取页面引用的css样式表中的属性值方法(推荐)
2016/08/19 Javascript
推荐10款扩展Web表单的JS插件
2017/12/25 Javascript
vue项目打包后上传至GitHub并实现github-pages的预览
2019/05/06 Javascript
package.json中homepage属性的作用详解
2020/03/11 Javascript
ES6 Symbol在对象中的作用实例分析
2020/06/06 Javascript
Vue proxyTable配置多个接口地址,解决跨域的问题
2020/09/11 Javascript
node.js如何根据URL返回指定的图片详解
2020/10/21 Javascript
python基础教程之缩进介绍
2014/08/29 Python
python将ip地址转换成整数的方法
2015/03/17 Python
python爬取拉勾网职位数据的方法
2018/01/24 Python
TensorFlow实现创建分类器
2018/02/06 Python
每天迁移MySQL历史数据到历史库Python脚本
2018/04/13 Python
在python中利用KNN实现对iris进行分类的方法
2018/12/11 Python
浅谈Python的条件判断语句if/else语句
2019/03/21 Python
Python for循环与range函数的使用详解
2019/03/23 Python
Python使用matplotlib 画矩形的三种方式分析
2019/10/31 Python
基于Python共轭梯度法与最速下降法之间的对比
2020/04/02 Python
HTML5画渐变背景图片并自动下载实现步骤
2013/11/18 HTML / CSS
Merrell迈乐澳大利亚网站:购买户外登山鞋
2017/05/28 全球购物
一个C/C++编程面试题
2013/11/10 面试题
后勤园长自我鉴定
2013/10/17 职场文书
会计电算化应届生求职信
2013/11/03 职场文书
2014年自愿离婚协议书
2014/10/10 职场文书
小学校本教研总结
2015/08/13 职场文书
Nginx解决403 forbidden的完整步骤
2021/04/01 Servers
Vue自定义铃声提示音组件的实现
2022/01/22 Vue.js
Java 超详细讲解hashCode方法
2022/04/07 Java/Android
vue特效之翻牌动画
2022/04/20 Vue.js