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 点击图片跳转上一张或下一张功能的实现代码
Mar 12 Javascript
jQuery 学习第六课 实现一个Ajax的TreeView
May 17 Javascript
文本框中禁止非数字字符输入比如手机号码、邮编
Aug 19 Javascript
JS如何将UTC格式时间转本地格式
Sep 04 Javascript
json的定义、标准格式及json字符串检验
May 11 Javascript
JS实现图文并茂的tab选项卡效果示例【附demo源码下载】
Sep 21 Javascript
vue实现留言板todolist功能
Aug 16 Javascript
JavaScript实现鼠标滚轮控制页面图片切换功能示例
Oct 14 Javascript
JS 实现分页打印功能
May 16 Javascript
在iFrame子页面里实现模态框的方法
Aug 17 Javascript
jQuery动态操作表单示例【基于table表格】
Dec 06 jQuery
详解Vue调用手机相机和相册以及上传
May 05 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利用MySQL保存session的实现思路及示例代码
2014/09/09 PHP
JavaScript iframe的相互操作浅析
2009/10/14 Javascript
jQuery Ajax方法调用 Asp.Net WebService 的详细实例代码
2011/04/27 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
2012/12/16 Javascript
用box固定长宽实现图片自动轮播js代码
2014/06/09 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
2015/01/13 Javascript
jquery中filter方法用法实例分析
2015/02/06 Javascript
JS仿iGoogle自定义首页模块拖拽特效的方法
2015/02/13 Javascript
js命名空间写法示例
2015/12/18 Javascript
Javascript字符串拼接小技巧(推荐)
2016/06/02 Javascript
js事件冒泡、事件捕获和阻止默认事件详解
2016/08/04 Javascript
JavaScript事件用法浅析
2016/10/31 Javascript
Ionic2系列之使用DeepLinker实现指定页面URL
2016/11/21 Javascript
浅谈ES6 模板字符串的具体使用方法
2017/11/07 Javascript
使用NestJS开发Node.js应用的方法
2018/12/03 Javascript
Vue的props父传子的示例代码
2020/05/20 Javascript
[03:00]2014DOTA2国际邀请赛 Titan淘汰潸然泪下Ohaiyo专访
2014/07/15 DOTA
Python天气预报采集器实现代码(网页爬虫)
2012/10/07 Python
python实现可以断点续传和并发的ftp程序
2016/09/13 Python
利用numpy实现一、二维数组的拼接简单代码示例
2017/12/15 Python
python 限制函数调用次数的实例讲解
2018/04/21 Python
python2.7实现邮件发送功能
2018/12/12 Python
Python调用REST API接口的几种方式汇总
2020/10/19 Python
详解Django中异步任务之django-celery
2020/11/05 Python
python 动态渲染 mysql 配置文件的示例
2020/11/20 Python
pandas apply使用多列计算生成新的列实现示例
2021/02/24 Python
HTML5的结构和语义(5):内嵌媒体
2008/10/17 HTML / CSS
Canvas制作的下雨动画的示例
2018/03/06 HTML / CSS
电大自我鉴定范文
2013/10/01 职场文书
白岩松演讲
2014/05/21 职场文书
经典团队口号
2014/06/06 职场文书
社区娱乐活动方案
2014/08/21 职场文书
试用期旷工辞退通知书
2015/04/17 职场文书
2015年领导班子工作总结
2015/05/23 职场文书
汤姆索亚历险记读书笔记
2015/06/29 职场文书
污染环境建议书
2015/09/14 职场文书