1:jsp

//级联ajax处理函数

function areaChange(){
    var areano=document.all("areaNo").value;
    var url="${pageContext.request.contextPath}/infoAction.do?method=queryPeopleByPosition";
      $.post(url,{areaNo:areano,position:"200"},
        function(personList){ 
              var personList=personList.personList; 
              $("#businessManager").empty();//删除所有option选项
              document.all("businessManager").options.add(new Option('-请选择-',''));
              for(var p in personList){
                 document.all("businessManager").options.add(new Option(personList[p],personList[p]));
              }               
        },"json");
    }

<td>地区</td>
<td>
       <html:select property="areaNo" style="width: 80px" onchange="areaChange()">
              <html:option value="">-请选择-</html:option>
              <c:forEach items="${listArea }" var="i">
               <html:option value="${i.nodeNo }">${i.nodeName }</html:option>
              </c:forEach>
             </html:select>
</td>
<td>业务经理</td>
<td>
             <html:select property="businessManager" styleId="businessManager" style="width: 80px">
              <html:option value="">-请选择-</html:option>
              <c:forEach items="${teamList}" var="i">
               <html:option value="${i.staffName }">${i.staffName }</html:option>
              </c:forEach>
             </html:select>
</td>

2、java处理方法

//查询根据地区动态查询对应职级人员信息(动态级联使用)
 public ActionForward queryPeopleByPosition(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response)throws Exception{
  try {
   String areaNo=request.getParameter("areaNo");
   String position=request.getParameter("position");
   P2pStaffInfo queryParams = new StaffInfo();
      queryParams.setAreaNo(areaNo);// 地区
      queryParams.setPosition(position);//

List<StaffInfo> personJavaList = infoLogic.queryStaffInfo(queryParams);

JSONObject personList=new JSONObject();
   JSONObject person=new JSONObject();
   if (null!=personJavaList&&personJavaList.size()>0) {
    for (P2pStaffInfo po:personJavaList) {
     person.put(po.getStaffName(), po.getStaffName());
    }
   }
   personList.put("personList", person);
   response.setCharacterEncoding("gbk");
   PrintWriter pw=response.getWriter();
   pw.write(personList.toString());
   pw.flush();
   pw.close();
  } catch (Exception e) {
   log.error("根据职级动态级联地区查询出错!", e);
   e.printStackTrace();
  }
  return null;
 }

Ajax+json实现菜单动态级联的更多相关文章

  1. Ajax json jquery实现菜单案例

    需求: 运用AJAX请求文件menu.json,配置菜单栏,并实现以下功能点: 1. 点击向左箭头,菜单向左移动,隐藏 2. 点击向右箭头,菜单向右移动,显示3. 点击一级菜单,被点击菜单的子菜单显示 ...

  2. JS动态级联菜单

    JS动态级联菜单是前端常用的一个功能,特此抽时间研究了下,附上代码 <html> <head> <meta charset="utf-8" /> ...

  3. 案例19-页面使用ajax显示类别菜单

    1 版本一 版本只能在首页显示类别,当切换到了其它页面就不会显示 1 web层IndexServlet代码 package www.test.web.servlet; import java.io.I ...

  4. javascript里面的数组,json对象,动态添加,修改,删除示例

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  5. javascript如何解析json对javascript如何解析json对象并动态赋值到select列表象并动态赋值到select列表

    原文 javascript如何解析json对象并动态赋值到select列表 JSON(JavaScriptObject Notation)一种简单的数据格式,比xml更轻巧.JSON是JavaScri ...

  6. Struts+Spring+Hibernate项目整合AJAX+JSON

    1.什么是AJAX AJAX是 "Asynchronous JavaScript and XML" 的简称,即异步的JavaScript和XML. 所谓异步,就是提交一个请求不必等 ...

  7. 纯js遍历json获取值动态为select添加option

    遍历json数组 并动态为select添加option 直接上代码,重要部分有注解 <!DOCTYPE html> <html lang="en"> < ...

  8. 基于MVC4+EF5.0+Ajax+Json+CSS3的简单注册页面(get&post)

    使用mvc4可以很快速的创建页面,但封装的过多,难免会有些性能上的问题.所以基于此,通过使用简单的手写html,加ajax,json来创建一个注册页面,会比较干净,简洁. 本项目的环境是MVC4+EF ...

  9. ajax+json模态框中分页(spring+struts+mybatis+easyui分页插件)

    0.业务需求: 点击每个数字的时候可以显示每个对应的详细记录.也就是得点击11的时候拿着开采部与C级去查询.

随机推荐

  1. Node.js 全局对象

    JavaScript 中有一个特殊的对象,称为全局对象(Global Object),它及其所有属性都可 以在程序的任何地方访问,即全局变量. 在浏览器JavaScript 中,通常window 是全 ...

  2. IT公司100题-26-左旋转字符串

    问题描述: 给定字符串和左旋的字符数,写程序实现字符串的左旋操作.例如对于字符串”12345678″, 左旋转4个字符后,变成”56781234″.要求时间复杂度为O(n),空间复杂度O(1).   ...

  3. C语言基础--进制

    进制表示: // 1.默认就是10进制 ; // 2.在前面加上一个0就代表八进制 ; // %d是以十进制的方式输出一个整数 printf("%d\n", num1); // % ...

  4. 关于ADDED_TO_STAGE事件

    可视类初始化的时候,很多时候要用到stage属性,则要使用Event.ADDED_TO_STAGE事件,这个swf被其它的文件加载,如果直接在初始化函数内使用stage属性 .但是,文档类初始化函数内 ...

  5. C#面向对象学习笔记概要

    1.面向对象不是取代面向过程的. 2.面向对象的三个特性:封装.继承.多态. 3.字段.方法.属性(后面讲)都可以叫做类的成员,他们都需要定义访问级别.访问级别的用处在于控制成员在哪些地方可以被访问, ...

  6. Xcode5 运行程序 提示IOS 模拟器未能安装此应用程序

    更新了Xcode5,结果模拟器各种不配合,首先遇到的问题就是提示“IOS 模拟器未能安装此应用程序” 上网查了一下,网友给出的解决办法“删除~/Library/Application Support/ ...

  7. Android使用SharedPreference存储数据

    SharedPreference存储数据和文件存储更加方便的一点是可以按照一定的数据类型进行存储,同时取数据时也能够获取到相应的数据类型.它是按照map的方式来存储和读取数据的. MainActivi ...

  8. datawindow 创建操作报表。

    最近制作做了几个简单的报表,写下主要的代码.以便各位参考. public void FillDW(DataTable dtbResult) { try { DataRow dtFr; ; , j = ...

  9. cocos2dx 3.0 之 lua 创建类

    利用3.0里面封装好的模板类来写,不罗嗦,直接上例子(消除星星小游戏中 星星类) require "extern" StarSprite = class("StarSpr ...

  10. fastqc, Per Base Sequence Content

    Per Base Sequence Content对所有reads的每一个位置,统计ATCG四种碱基(正常情况)的分布: 横轴为位置,纵轴为百分比. 正常情况下四种碱基的出现频率应该是接近的,而且没有 ...