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 相关文章推荐
20款超赞的jQuery插件 Web开发人员必备
Feb 26 Javascript
浏览器打开层自动缓慢展开收缩实例代码
Jul 04 Javascript
javascript实现在某个元素上阻止鼠标右键事件的方法和实例
Aug 12 Javascript
js实现div层缓慢收缩与展开的方法
May 11 Javascript
原生javascript实现匀速运动动画效果
Feb 26 Javascript
jQuery实现放大镜效果实例代码
Mar 17 Javascript
浅谈Angular的$q, defer, promise
Dec 20 Javascript
addEventListener()与removeEventListener()解析
Apr 20 Javascript
jQuery实现左右滑动的toggle方法
Mar 03 jQuery
Cookbook组件形式:优化 Vue 组件的运行时性能
Nov 25 Javascript
JSON字符串操作移除空串更改key/value的介绍
Jan 05 Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
Aug 03 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实现通过正则表达式替换回调的内容标签
2015/06/15 PHP
PHP自定义函数实现格式化秒的方法
2016/09/14 PHP
PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据示例
2018/06/09 PHP
prototype.js的Ajax对象
2006/09/23 Javascript
jQuery中$.click()无效问题分析
2015/01/29 Javascript
浅谈$(document)和$(window)的区别
2015/07/15 Javascript
jquery表单验证需要做些什么
2015/11/17 Javascript
javascript中sort排序实例详解
2016/07/24 Javascript
jQuery中animate的几种用法与注意事项
2016/12/12 Javascript
jq源码解析之绑在$,jQuery上面的方法(实例讲解)
2017/10/13 jQuery
nodejs基于express实现文件上传的方法
2018/03/19 NodeJs
详解webpack打包后如何调试的方法步骤
2018/11/07 Javascript
JS/HTML5游戏常用算法之路径搜索算法 随机迷宫算法详解【普里姆算法】
2018/12/13 Javascript
详解如何在vscode里面调试js和node.js的方法步骤
2018/12/24 Javascript
ES6的解构赋值实例详解
2019/05/06 Javascript
Vue+element 解决浏览器自动填充记住的账号密码问题
2019/06/11 Javascript
关于Layui Table隐藏列问题
2019/09/16 Javascript
JS变量提升原理与用法实例浅析
2020/05/22 Javascript
Python中支持向量机SVM的使用方法详解
2017/12/26 Python
python opencv 直方图反向投影的方法
2018/02/24 Python
对numpy和pandas中数组的合并和拆分详解
2018/04/11 Python
python对excel文档去重及求和的实例
2018/04/18 Python
Pandas 缺失数据处理的实现
2019/11/04 Python
Django与pyecharts结合的实例代码
2020/05/13 Python
基于Python模拟浏览器发送http请求
2020/11/06 Python
python实现企业微信定时发送文本消息的示例代码
2020/11/24 Python
Clarisonic美国官网:科莱丽声波洁面仪
2017/10/12 全球购物
商务英语本科生的自我评价分享
2013/11/15 职场文书
中学教师教育感言
2014/02/21 职场文书
销售经理助理岗位职责
2015/04/13 职场文书
三八妇女节主持词
2015/07/04 职场文书
python获取淘宝服务器时间的代码示例
2021/04/22 Python
Css预编语言及区别详解
2021/04/25 HTML / CSS
MySQL8.0无法启动3534的解决方法
2021/06/03 MySQL
JavaScript 对象创建的3种方法
2021/11/17 Javascript
如何基于python实现单目三维重建详解
2022/06/25 Python