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 相关文章推荐
实现web打印的各种方法介绍及实现代码
Jan 09 Javascript
javascript日期处理函数,性能优化批处理
Sep 06 Javascript
动态创建按钮的JavaScript代码
Jan 29 Javascript
JS实现支持Ajax验证的表单插件
Mar 24 Javascript
网络传输协议(http协议)
Nov 18 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
Jan 13 Javascript
footer定位页面底部(代码分享)
Mar 07 Javascript
慕课网题目之js实现抽奖系统功能
Sep 19 Javascript
浅谈Angular4中常用管道
Sep 27 Javascript
详解vue2.0 资源文件assets和static的区别
Nov 27 Javascript
vue中的mvvm模式讲解
Jan 31 Javascript
three.js 如何制作魔方
Jul 31 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文件上传大小限制问题(nginx+php)
2015/09/23 PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
2019/10/22 PHP
XRegExp 0.2: Now With Named Capture
2007/11/30 Javascript
js计算页面刷新的次数
2009/07/20 Javascript
IE下js调试工具Companion.JS
2010/10/15 Javascript
jQuery 验证插件 Web前端设计模式(asp.net)
2010/10/17 Javascript
JS判断文本框内容改变事件的简单实例
2014/03/07 Javascript
javascript(js)的小数点乘法除法问题详解
2014/03/07 Javascript
JQuery中DOM事件冒泡实例分析
2015/06/13 Javascript
JS条形码(一维码)插件JsBarcode用法详解【编码类型、参数、属性】
2017/04/19 Javascript
基于jQuery选择器之表单对象属性筛选选择器的实例
2017/09/19 jQuery
详解如何在Angular优雅编写HTTP请求
2018/12/05 Javascript
微信小程序中网络请求缓存的解决方法
2019/12/29 Javascript
利用H5api实现时钟的绘制(javascript)
2020/09/13 Javascript
Python随机生成数模块random使用实例
2015/04/13 Python
Python的Django框架中自定义模版标签的示例
2015/07/20 Python
举例简单讲解Python中的数据存储模块shelve的用法
2016/03/03 Python
python 内置函数filter
2017/06/01 Python
numpy中实现二维数组按照某列、某行排序的方法
2018/04/04 Python
django 修改server端口号的方法
2018/05/14 Python
Mac在python3环境下安装virtualwrapper遇到的问题及解决方法
2019/07/09 Python
Python3.7安装pyaudio教程解析
2020/07/24 Python
html5的localstorage详解
2017/05/09 HTML / CSS
Homestay中文官网:全球寄宿家庭
2018/10/18 全球购物
越南母婴用品购物网站:Kids Plaza
2020/04/09 全球购物
幼儿园小班植树节活动方案
2014/03/04 职场文书
雷锋精神演讲稿
2014/05/13 职场文书
篮球兴趣小组活动总结
2014/07/07 职场文书
写得不错的求职信范文
2014/07/11 职场文书
安全责任书范文
2014/08/25 职场文书
暑假社会实践证明格式
2014/10/28 职场文书
2015驻村干部工作总结
2015/04/07 职场文书
2016企业先进集体事迹材料
2016/02/25 职场文书
干货:如何写好工作总结报告!
2019/05/10 职场文书
Win10 heic文件怎么打开 ? Win10 heic文件打开教程
2022/04/06 数码科技
Android Rxjava3 使用场景详解
2022/04/07 Java/Android