js代码:

$(document).ready(function() {
$("#type1").change(function(){
var type1Code=$("#type1").val();
$("#type2").empty();
if (type1Code!=0) {
$.ajax({
type:'post',
url:'getType2.action',
data:'type1Code='+type1Code,
dataType:'json',
success:function(json){
if(null != json){
$("#type2").append("<option value=''>请选择二级类型</option>");
for(var i=0; i< json.type2List.length;i++){
$("#type2").append("<option value='"
+json.type2List[i].type2Code+"'>"
+json.type2List[i].type2Name+"</option>");
}
}
},
error:function(){
alert('取二级类型异常!');
}
});
}else{
$("#type2").append("<option value=''>请选择二级类型</option>");
}
});

jsp代码:

	<td>
一级类型:
</td>
<td align="left">
<s:select id="type1" name="vo.type1" list="vo.type1List"
headerKey="0" headerValue="请选择一级类型" listKey="code"
listValue="name"></s:select>
</td>
<td>
二级类型:
</td>
<td align="left">
<select id="type2" name="vo.type2">
<option value="">
请选择二级类型
</option>
</select>
</td>

struts.xml文件配置:

 <package name="plan" extends="base-action" namespace="/plan">

         <result-types>
<result-type name="json" class="com.googlecode.jsonplugin.JSONResult" />
</result-types>
<interceptors>
<interceptor name="json" class="com.googlecode.jsonplugin.JSONResult" />
</interceptors> <action name="getType2" class="planUploadAction" method="getType2">
<interceptor-ref name="ebStackWithoutValidationAndToken" />
<result type="json"></result>
<result name="input" type="chain">init</result>
<result name="invalid.token" type="chain">init</result>
<exception-mapping result="success" exception="java.lang.Exception" />
</action> 。。。。。。 </package>

对应action中的方法:

	/**
* 取二级类型
* @return
*/
public String getType2(){
try{
String type1Code=request.getParameter("type1Code");
String type2Code="type2_"+type1Code;
List<HashMap<String, Object>> lit = new ArrayList<HashMap<String, Object>>();
JSONObject json = new JSONObject();
HashMap<String, Object> map = new HashMap<String, Object>();
//二级类别
List<SystemParamVO> type2List=sysParamTypeService.listParamByType(type2Code);
for(SystemParamVO type2:type2List){
map = new HashMap<String, Object>();
map.put("type2Code", type2.getCode());
map.put("type2Name", type2.getName());
lit.add(map);
}
json.put("type2List", lit);
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.write(json.toString());
}catch (Exception e) {
log.error(e.getMessage(), e);
response.setStatus(500);
}
return null;
}

ajax,下拉框级联的更多相关文章

  1. Jquery+Ajax下拉框级联查询

  2. layui select 下拉框 级联 动态赋值 与获取选中值

    //下拉框必须在 class="layui-form" 里 不然监听事件没有作用 <div class="layui-form" > <div ...

  3. [转]html 下拉框级联

    <html> <head> <title>html 下拉框级联</title> <meta charset="UTF-8"/& ...

  4. EasyUI下拉框级联

    EasyUI用来实现后台界面还是可以的,毕竟面对的是小众群体而非广大的用户,简单为美.这里想聊的功能是一种下拉框的联动,比如我选中了下拉框A的某一项,那么下拉框B的选项就是甲乙丙丁,如果我选了A的另一 ...

  5. java 下拉框级联及相关(转)

    ActionLintsner都实现此接口,其它监听器可以监听的事件都可以被它捕获 public interface ActionListener extends EventListenerThe li ...

  6. AJAX下拉框联动

    function getProvince() { var ProName = $("#dvProv").val(); LoadProvince(ProName); } functi ...

  7. MVC+knocKout.js 实现下拉框级联

    数据库:部门表和员工表 在控制器里面的操作: public ActionResult Index3() { ViewBag.departments = new SelectList(getDepart ...

  8. 基于Bootstrap的下拉框插件bootstrap-select

    写在前面: 在这次的项目中,没有再使用liger-ui做为前端框架了,改为了Bootstrap,这次也好接触下新的技术,在学习的过程中发现,Bootstrap的一些组件基本都是采用class的形式,就 ...

  9. struts-hibernate-ajax完成区县和街道级联下拉框功能(二补充使用json解析list结果集,ajax循环json层级处理)

    针对<struts-hibernate-ajax完成区县和街道级联下拉框功能>进行补充,上一篇中,要在action中拼接JSON格式字符串,很容易手抖.直接用json处理一下转成json格 ...

随机推荐

  1. godaddy空间的sql server数据库没办法insert中文

    原来的代码: use string007 from sysobjects where id = object_id('K_V_TEST') and type = 'U') drop table K_V ...

  2. 基础知识系列☞IList ←vs→ List

    原文地址→http://www.cnblogs.com/zbphot/archive/2011/11/04/2235933.html IList接口→表示可按照索引单独访问的对象的非泛型集合. ILi ...

  3. ASP 编码转换(乱码问题解决)

    ASP 编码转换(乱码问题解决) 输出前先调用Conversion函数进行编码转换,可以解决乱码问题. 注,“&参数&”为ASP的连接符,这里面很多是直接调用的数据库表字段,实际使用请 ...

  4. input lable水平对齐

    1.CSS <style type="text/css">       input,label { vertical-align:middle;} </style ...

  5. UI第四节——UIImageView详解

    - (void)viewDidLoad { // super调用是必须的 [super viewDidLoad]; UIImage *image = [UIImage imageNamed:@&quo ...

  6. 使用VNC登录Linux

    ###服务器是否配置了VNCSERVER,可以在命令行下敲入以下命令查看: [root@localhost: ~]#rpm -qa |grep vnc ###配置VNC 1. 机器IP为:10.0.0 ...

  7. IoC模式

    1.依赖 依赖就是有联系,有地方使用到它就是有依赖它,一个系统不可能完全避免依赖.如果你的一个类或者模块在项目中没有用到它,恭喜你,可以从项目中剔除它或者排除它了,因为没有一个地方会依赖它.下面看一个 ...

  8. HDU 4939 Stupid Tower Defense(dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4939 解题报告:一条长度为n的线路,路上的每个单元格可以部署三种塔来给走在这条路上的敌人造成伤害,第一 ...

  9. Android学习笔记(十三)——广播机制

     //此系列博文是<第一行Android代码>的学习笔记,如有错漏,欢迎指正! Android 中的每个应用程序都可以对自己感兴趣的广播进行注册,这样该程序就只会接收到自己所关心的广播内容 ...

  10. JSON字符串转JavaBean,net.sf.ezmorph.bean.MorphDynaBean cannot be cast to ……

    在json字符串转java bean时,一般的对象,可以直接转,如:一个学生类,属性有姓名.年龄等 public class Student implements java.io.Serializab ...