ajax,下拉框级联
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,下拉框级联的更多相关文章
- Jquery+Ajax下拉框级联查询
- layui select 下拉框 级联 动态赋值 与获取选中值
//下拉框必须在 class="layui-form" 里 不然监听事件没有作用 <div class="layui-form" > <div ...
- [转]html 下拉框级联
<html> <head> <title>html 下拉框级联</title> <meta charset="UTF-8"/& ...
- EasyUI下拉框级联
EasyUI用来实现后台界面还是可以的,毕竟面对的是小众群体而非广大的用户,简单为美.这里想聊的功能是一种下拉框的联动,比如我选中了下拉框A的某一项,那么下拉框B的选项就是甲乙丙丁,如果我选了A的另一 ...
- java 下拉框级联及相关(转)
ActionLintsner都实现此接口,其它监听器可以监听的事件都可以被它捕获 public interface ActionListener extends EventListenerThe li ...
- AJAX下拉框联动
function getProvince() { var ProName = $("#dvProv").val(); LoadProvince(ProName); } functi ...
- MVC+knocKout.js 实现下拉框级联
数据库:部门表和员工表 在控制器里面的操作: public ActionResult Index3() { ViewBag.departments = new SelectList(getDepart ...
- 基于Bootstrap的下拉框插件bootstrap-select
写在前面: 在这次的项目中,没有再使用liger-ui做为前端框架了,改为了Bootstrap,这次也好接触下新的技术,在学习的过程中发现,Bootstrap的一些组件基本都是采用class的形式,就 ...
- struts-hibernate-ajax完成区县和街道级联下拉框功能(二补充使用json解析list结果集,ajax循环json层级处理)
针对<struts-hibernate-ajax完成区县和街道级联下拉框功能>进行补充,上一篇中,要在action中拼接JSON格式字符串,很容易手抖.直接用json处理一下转成json格 ...
随机推荐
- [译]通过IIS Request Filtering解决SQL Server CPU高的问题
原文http://www.peterviola.com/solving-sql-server-high-cpu-with-iis-request-filtering/ Top Queries by T ...
- 新手使用R的注意事项
1.最好先设置工作目录 如: setwd(“D:/DataDig”) 注意不是”\”,是”/” 再读取数据,如: datafile = read.csv("./test.csv") ...
- BSA混合分离分析法
BSA(Bulked Segregant Analysis)又称混合群体分离分析法,是利用极端性状进行功能基因挖掘的一种方法.主要思想是将两个具有极端性状的群体进行混池测序,比较两个群体在多态位点(S ...
- 如何使用Android中hide的类和方法进行开发?
1.获取Android源码并进行编译. 2.编译完毕后,取出out\target\common\obj\JAVA_LIBRARIES\framework_intermediates路径下的classe ...
- hash-5.ConcurrentHashMap
http://www.cnblogs.com/dolphin0520/p/3932905.html有时间细看
- codemirror和ace editor的语法高亮
两个javascript库用做在线代码编辑器都是非常优秀的选择 我这两天对这两个类库做了简单的研究,重点是语法高亮的自定义: ace editor的主要思路是生成状态机,从一个startstate开始 ...
- linux kernel i2c底层代码跟踪
其实跟上次跟的平台总线有关 在arch/arm/mach-mx6/board-mx6q_sabresd.c 文件中 static void __init mx6_sabresd_board_init( ...
- BZOJ 2084: [Poi2010]Antisymmetry
Sol Manacher. \(O(n)\) Manacher很简单啊.改一改转移就可以了. 然后我WA了.一开始天真的认为id只会是奇数,然后就GG. 一组 Hack 数据 3 1 0 0 然后就跳 ...
- Android Xpose Hook(一)
实验环境: Droid4x模拟器 (目前Android版本4.2.2) Android Studio 1.下载相关工具 XposedInstaller下载 http://repo.xp ...
- Python类的特点 (1):构造函数与方法
Python中,类的特点: #encoding:utf-8 class Parent(object): x=1 #x是Parent类的属性(字段) def __init__(self): print ...