最近写程序的时候经常遇到使用ajax获取数据的问题,刚好昨天遇到ajax写三级级联问题,自己写了一个简单的级联。对于服务端获取数据的就不多写了,客户端的ajax发送请求我在这里详细说一下,因为我也没专门学过jQuery的ajax也都是在网上看的资料,希望我的理解对大家有帮助吧。

  <script type="text/javascript">
        var ctx = '<%=request.getContextPath()%>';
        //获取一级职位分类
        window.onload=function(){
                 $.ajax({
                 url:ctx+'/hr/base/job/queryJobLevel1.htm',
                  type:'post',
                  contentType:"application/json",
                  data:'{}',
                dataType:'json',  
                 success:function(data) {  
                $("#level1").empty();
                   $("#level1").append("<option value=''>请选择职位类型</option>");
                   for(var i=0;i<data.data.length;i++){
                       $("#level1").append("<option value='"+data.data[i].id+"'>"+data.data[i].name+"</option>");
                   }
             },  
              error : function() {  
                   alert("异常!");  
             }  
         });
        }
       function addSub(value){
        if(""!=value){
        $.ajax({
                 url:ctx+'/hr/base/job/queryJobLevel2.htm',
                  type:'post',
                  contentType:"application/json",
                  data:'{rid:value}',
                dataType:'json',  
                 success:function(data) {  
                   $("#level2").empty();
                   $("#level2").append("<option value=''>请选择职位类型</option>");
                   for(var i=0;i<data.data.length;i++){
                       $("#level2").append("<option value='"+data.data[i].id+"'>"+data.data[i].name+"</option>");
                   }
             },  
              error : function() {  
                   alert("异常!");  
             }  
         });
        }
       }
       
       function addSub2(value){
        if(""!=value){
        $.ajax({
                 url:ctx+'/hr/base/job/queryJobLevel3.htm',
                  type:'post',
                  contentType:"application/json",
                  data:'{rid:value}',
                dataType:'json',  
                 success:function(data) {  
                   $("#level3").empty();
                   for(var i=0;i<data.data.length;i++){
                       $("#level3").append("<option value='"+data.data[i].id+"'>"+data.data[i].name+"</option>");
                   }
             },  
              error : function() {  
                   alert("异常!");  
             }  
         });
        }
       }

做了三个下拉框,好像这样的比较简单一些。

  

之前研究了很久,做完才发现其实也不是特别的难,希望对大家有帮助。

对jQuery ajax三级级联的简单研究的更多相关文章

  1. jquery ajax请求后台 的简单例子

    jQuery.ajax(url,[settings]) 概述 通过 HTTP 请求加载远程数据. jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax ...

  2. jQuery学习之jQuery Ajax用法详解

    jQuery Ajax在web应用开发中很常用,它主要包括有ajax,get,post,load,getscript等等这几种常用无刷新操作方法,下面我来给各位同学介绍介绍. 我们先从最简单的方法看起 ...

  3. jQuery学习之jQuery Ajax用法详解(转)

    [导读] jQuery Ajax在web应用开发中很常用,它主要包括有ajax,get,post,load,getscript等等这几种常用无刷新操作方法,下面我来给各位同学介绍介绍.我们先从最简单的 ...

  4. [转]Jquery Ajax用法

    原文地址:http://www.php100.com/html/program/jquery/2013/0905/6004.html jQuery学习之jQuery Ajax用法详解 来源:   时间 ...

  5. jQuery Ajax用法

    jQuery Ajax在web应用开发中很常用,它主要包括有ajax,get,post,load,getscript等等这几种常用无刷新操作方法,下面我来给各位同学介绍介绍. 我们先从最简单的方法看起 ...

  6. jQuery学习之jQuery Ajax用法详解(转)

    jQuery Ajax在web应用开发中很常用,它主要包括有ajax,get,post,load,getscript等等这几种常用无刷新操作方法,下面我来给各位同学介绍介绍. 我们先从最简单的方法看起 ...

  7. (高级篇)jQuery学习之jQuery Ajax用法详解

    jQuery Ajax在web应用开发中很常用,它主要包括有ajax,get,post,load,getscript等等这几种常用无刷新操作方法,下面我来给各位同学介绍介绍. 我们先从最简单的方法看起 ...

  8. [C#]使用 C# 代码实现拓扑排序 dotNet Core WEB程序使用 Nginx反向代理 C#里面获得应用程序的当前路径 关于Nginx设置端口号,在Asp.net 获取不到的,解决办法 .Net程序员 初学Ubuntu ,配置Nignix 夜深了,写了个JQuery的省市区三级级联效果

    [C#]使用 C# 代码实现拓扑排序   目录 0.参考资料 1.介绍 2.原理 3.实现 4.深度优先搜索实现 回到顶部 0.参考资料 尊重他人的劳动成果,贴上参考的资料地址,本文仅作学习记录之用. ...

  9. php+jquery+ajax+json简单小例子

    直接贴代码: <html> <title>php+jquery+ajax+json简单小例子</title> <?php header("Conte ...

随机推荐

  1. typedef 函数指针 数组 std::function

    1.整型指针 typedef int* PINT;或typedef int *PINT; 2.结构体 typedef struct { double data;}DATA,  *PDATA;  //D ...

  2. Linux之RHEL6的开机流程分析

    开机——很多人觉得很简单的事情,只要按下电源开关,然后系统就会自然启动,没有什么需要学习的.其实不然,如果系统没有什么问题,可以正常登陆的时候,当然开机很简单.但更多的时候,我们需要知道当机子不能正常 ...

  3. PHPCMS企业站制作

    安装 将下载好的文件放到www目录下 地址栏中输入 http://localhost:8080/phpcms/install_package/install 打开安装页面 进行安装即可. 如果出现: ...

  4. 对线程等待函数pthread_join二级指针参数分析

    分析之前先搞明白,这个二级指针其实在函数内部是承接了上个线程的返回值. 看man手册,发现返回值是个普通指针.人家用二级指针来承接,可能准备干大事.这个可以自己搜索一下.原因嘛,二级指针是保存了这个地 ...

  5. RStudio中,出现中文乱码问题的解决方案

    RStudio中,出现中文乱码问题的解决方案解决步骤:1.设置RStudio文本显示的默认编码:RStudio菜单栏的Tools -> Global Options2.选择General -&g ...

  6. asp.net mvc bundle中数组超出索引

    在使用bundle 来加载css的时候报错了, @Styles.Render("~/bundles/appStyles") 第一反应 以为是的css 太多了,可是当我这个style ...

  7. C语言多文件编译

    fun.c #include <stdio.h> int fun1(){ printf("The first function!\n"); return 0; } in ...

  8. ORA-28001: the password has expired (DBD ERROR: OCISessionBegin) EM无法登录

    先发句牢骚,明明刚才写完了,发布的时候却说没登陆,一下子全没了. 今天打开EM发现提示 ORA-28001: the password has expired (DBD ERROR: OCISessi ...

  9. linux内核学习心得

    最初在其他课程做实验的时候接触到了linux,震撼于linux的开源精神,想更了解linux的内部原理,选了这门课程.通过这门课程对linux内部实现有了一定的了解,主要是中断.进程切换.系统函数的具 ...

  10. Java多线程同步 synchronized 关键字的使用

    代表这个方法加锁,相当于不管哪一个线程A每次运行到这个方法时,都要检查有没有其它正在用这个方法的线程B(或者C D等),有的话要等正在使用这个方法的线程B(或者C D)运行完这个方法后再运行此线程A, ...