jQuery - AJAX 级联变动
此篇文章主要是用来记忆使用JQUERY+AJAX技术实现 二级级联变动 :
当第一个下拉框变动时,第二个下拉列表框中也将会随之变动。
JSP:
---------------------------------------------------
<tr
onmouseover="currentcolor=this.style.backgroundColor;this.style.backgroundColor='#f0f7ff'"
onmouseout="this.style.backgroundColor=currentcolor">
<td width="10%" class="main_matter_td">
文件:
</td>
<td width="40%" align="left" class="main_matter_td">
<div align="left">
<span class="STYLE1"><input type="file" name="upfile"
id="upfile" /> </span>
</div>
</td>
<td align="left" class="main_matter_td" width="10%">
<a href="#" onclick="QueryAllBaseversionByDid();"> 标准</a></td> //此处定义是为了在第二个下拉列表框中加入value=0 “无” 选项
<td align="left" width="40%" class="main_matter_td">
<!--先选择监测场所,再选择对应的标准-->
<select name="Did" id="Did" style="width: 150px;" onchange="QueryAllBaseversionByDid();"> // 通过name=DId的数值 在action中进行查询 并将数据返回
<option value="0" >选择监测场所</option>
<c:forEach items="${listb}" var="bentity" varStatus="ss">
<option title=${bentity.name} value="${bentity.id}" title="${bentity.name}">
${bentity.name}
</option>
</c:forEach>
</select>
<select name="standardNum" id="standardNum" style="width: 150px;"> // 这是第二个下拉列表框 用于接收第一个列边框变动的结果
<option value="0" >选择应用标准</option>
</select>
</td>
</tr>
--------
<script type="text/javascript">
function QueryAllBaseversionByDid()
{
var id = $('#Did').val();
var url_check = "../Baseelement/QueryAllBaseversionByDid.action"; // 调用的ACTION
// alert(id);
$.ajax({
type:"post", // 传送方式 // 调用的ACTION地址
url:url_check,
data:"id="+id, // 传送的参数 id
success:function(msg){
var standardNum = $('#standardNum').empty(); // 使用 empty() 方法从元素移除内容。
// alert(standardNum);
standardNum.append("<option value=0 >选择对应的标准--</option>"); // 将数据加入到第二个下拉列表中
var list = eval("("+msg+")");
for(var i=0; i<list.length; i++){
standardNum.append("<option value="+list[i][0]+" title="+list[i][1]+">"+list[i][1]+"</option>");
}
}
})
}
</script>
-----------------------------
action中方法
/**
* 查看场所对应的标准版本
* @return
*/
public String QueryAllBaseversionByDid()
{
Integer bid = Integer.parseInt(get("id").toString());
//this.getRequest().setAttribute("list", this.bscs.QueryAllBaseversionByDid(bid));
this.remove("id");
this.put("list", this.bscs.QueryAllBaseversionByDid(bid));
// return Action.SUCCESS;
return null;
}
// xml配置文档 这里是重点 重点在于:返回的数据时JSON2 这是之前没有接触的 要牢记
<!-- 查看场所对应的标准版本 -->
<action name="QueryAllBaseversionByDid" class="com.hsms.Action.BaseSysConfigAction.BaseSysConfigAction" method="QueryAllBaseversionByDid" >
<result name="success" type="json2"></result>
</action>
-----
impl中方法QueryAllBaseversionByDid(bid)
public List<Baseversion> QueryAllBaseversionByDid(Integer bid)
{
return baseversionDao.getEm().createQuery("select id,beid from Baseversion where bid=?1 and pid=0").setParameter(1, bid).getResultList();
}
-------------------------------------------------------
jQuery - AJAX 级联变动的更多相关文章
- JS jquery ajax 已看1 有用
4.form中的input可以设置为readonly和disable,请问2者有什么区别? readonly不可编辑,但可以选择和复制:值可以传递到后台 disabled不能编辑,不能复制,不能选择: ...
- 继上篇-jquery ajax提交 本篇用ajax提交的数据去数据库查询
上篇讲到如何用jquery ajax提交数据至后台,后台接收并返回给ajax.https://www.cnblogs.com/tiezhuxiong/p/11943328.html 今天我们把数据传到 ...
- IE8/9 JQuery.Ajax 上传文件无效
IE8/9 JQuery.Ajax 上传文件有两个限制: 使用 JQuery.Ajax 无法上传文件(因为无法使用 FormData,FormData 是 HTML5 的一个特性,IE8/9 不支持) ...
- jquery ajax解析
jQuery确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯. 废话少说,直接进入正题,我们先来看一些简单的方法,这些方法都是对 ...
- jQuery.ajax 根据不同的Content-Type做出不同的响应
使用H5+ASP.NET General Handler开发项目,使用ajax进行前后端的通讯.有一个场景需求是根据服务器返回的不同数据类型,前端进行不同的响应,这里记录下如何使用$.ajax实现该需 ...
- jQuery.ajax(url,[settings])
概述 通过 HTTP 请求加载远程数据. jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax() 返回其创建的 XMLHttpRequest 对象. ...
- jQuery Ajax 实例 ($.ajax、$.post、$.get)
jQuery Ajax 实例 ($.ajax.$.post.$.get) 转 Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的诧异了. ...
- jQuery Ajax传值给Servlet,在Servlet里Get接受参数乱码的解决方法
最近在学jquery ui,在做一个小功能的时候需要将前台的值获取到,通过Ajax传递给Servlet,然后再在返回数据结果,但是在Servlet接受参数的时候,通过后台打印,发现接受乱码,代码示例如 ...
- JQuery+Ajax+Struts2+Hibernate 实现完整的登录注册
写在最前: 下午有招聘会,不想去,总觉得没有准备好,而且都是一些不对口的公司,可是又静不下心来,就来写个博客. 最近在仿造一个书城的网站:http://www.yousuu.com ,UI直接拿来用, ...
随机推荐
- JS替换回车换行符
replace(/\r/ig, '<br>').replace(/\n/ig, '<br>')
- [codeforces724D]Dense Subsequence
[codeforces724D]Dense Subsequence 试题描述 You are given a string s, consisting of lowercase English let ...
- [bzoj1787][Ahoi2008]Meet 紧急集合(lca)
传送门 可以看出,三个点两两之间的lca会有一对相同,而另一个lca就是聚集点. 然后搞搞就可以求出距离了. ——代码 #include <cstdio> #include <cst ...
- 【尺取或dp】codeforces C. An impassioned circulation of affection
http://codeforces.com/contest/814/problem/C [题意] 给定一个长度为n的字符串s,一共有q个查询,每个查询给出一个数字m和一个字符ch,你的操作是可以改变字 ...
- Linux审计sudo
Linux日志审计项目案例实战(生产环境日志审计项目解决方案) https://www.linuxidc.com/Linux/2015-07/120501.htm
- LINUX 下 ipv6 socket 编程
大家都知道,随着互联网上主机数量的增多,现有的32位IP地址已经不够用了,所以推出了下一代IP地址IPv6,写网络程序的要稍微改变一下现有的网络程序适应IPv6网络是相当容易的事.对于我们来说就是IP ...
- 碧砚适合佳能328 4452 ICD520 4472 4450 硒鼓4700一体机墨盒4770
- Ubuntu更换主板之后 网络重新配置
Ubuntu更换主板之后,网络不能用,需要重新配置 1. 首要要查看新主板的mac地址, dmesg | grep eth 2. 修改网络信息,该配置文件是/etc/udev/rules.d, 文 ...
- 【python】super()
转自: http://www.cnblogs.com/lovemo1314/archive/2011/05/03/2035005.html
- 【python】urllib2
urllib2.urlopen(url[, data][, timeout]) 请求url,获得请求数据,url参数可以是个String,也可以是个Request参数 没有data参数时为GET请求, ...