Jquery调用Ajax实现联动使用json
在很多时候我们都会使用到联动。jquery.js是一个不错的js框架。其ajax也挺不错。下面将实现一个js联动:选择公司出来受益人。根据公司不同受益人不同。
前提是:你用引入jquery.js
<script language="javascript" src="../js/jquery-1.4.4.min.js"></script>
页面JS:
// 更换公司
function changeCompany(company_name){
var id_beneficiaryObj = $("#id_beneficiary");
var date_belong = $("#date_belong").val();
id_beneficiaryObj.empty(); // 清空
id_beneficiaryObj.prepend("<option value=''>请选择</option>"); $.ajax({
type: "POST",
dataType: "json",
url: "beneficiary_um_action.jsp",
data: { tabid: "selectCompanyUser",
company_name: company_name,
date_belong: date_belong
},
success: function (data) {
$.each(data, function (i, n) {
// 追加项
id_beneficiaryObj.append("<option value=" + n.id_beneficiary + ">" + n.beneficiary_name + "</option>");
});
}
});
}
页面html:
<tr>
<td width="20%" align="center">公司名称</td>
<td >
<select name = "company_name" id="company_name" onchange="changeCompany(this.value);">
<option value="">合计</option>
<c:if test="${not empty dateBelongList }">
<c:forEach var="company" items="${companyList }">
<option value="<c:out value='${company.company_name }' />"><c:out value='${company.company_name_name }' /></option>
</c:forEach>
</c:if>
</select>
</td>
<td width="20%" align="center">受益人</td>
<td >
<select name="id_beneficiary" id="id_beneficiary">
<option value="">请选择</option>
</select>
</td>
</tr>
请求联调数据的java类 beneficiary_um_action.jsp:
if ("selectCompanyUser".equals(tabid))
{
if (!StringUtil.isEmpty(company_name))
{
String id_um = (String)session.getAttribute(CommonConstants.USER_ID);
String jsonString = beneficiaryUmDAO.getBeneficiaryInfoByCompanyName(company_name, id_um);
response.getWriter().write(jsonString);
}
return;
}
beneficiaryUmDAO:
/**查询_根据公司名称所属年月查询公司下受益人信息
*
* @param company_name 公司名称
* @param date_belong 所属年月
* @return
* @throws ServerException
*/
public String getBeneficiaryInfoByCompanyName(String company_name, String id_um) throws ServerException {
try {
if (StringUtil.isEmpty(company_name))
{
return null;
}
Map<String, Object> param = new HashMap<String, Object>();
param.put("company_name", company_name);
param.put("id_um", id_um);
List<BeneficiaryInfo> beneficiaryInfoList = (List<BeneficiaryInfo>) sqlMapper.queryForList("select_BeneficiaryInfo_select", param);
JSONArray jsonArray = new JSONArray();
for (BeneficiaryInfo info : beneficiaryInfoList)
{
JSONObject json = new JSONObject();
json.put("id_beneficiary", info.getId_beneficiary());
json.put("beneficiary_name", info.getBeneficiary_name());
jsonArray.put(json);
} return jsonArray.toString();
} catch (SQLException e) {
throw new ServerException(e);
}
}
就这样完成了。
Jquery调用Ajax实现联动使用json的更多相关文章
- 份-城市,基于jQuery的AJAX二级联动,用Struts2整合AJAX【非数据库版】
package loaderman.provincecity; import java.io.IOException; import java.util.LinkedHashSet; import j ...
- jQuery调用ajax获取json格式数据
<body> <div>点击按钮获取音乐列表</div> <input type="button" id="button&quo ...
- jQuery调用AJAX异步详解[转]
AJAX 全称 Asynchronous JavaScript and XML(异步的 JavaScript 和 XML).它并非一种新的技术,而是以下几种原有技术的结合体. 1) 使用CSS和X ...
- Asp.Net下,基于Jquery的Ajax二级联动
最近做一个项目,要求实现二级联动效果.背景为:通过学院的选择,联动出专业选项.起初想直接用微软的控件实现Ajax效果,但是DropDownList控件会自动触发PostBack,在后台根本就不好控制, ...
- day63-webservice 09.jquery调用ajax
WebService可以有很多种调用方式,除了之前说的,还可以有jquery.拿原生的Ajax做调用,拿jquery怎么调用啊?原生的能调,jquery指定也能调.原生的Ajax是通过网页直接点HTM ...
- Jquery调用ajax,出现一直跳转到error问题
今天做项目的时候,遇到ajax请求,一直都是跳转到了error部分,一直没有进入success部分 后来查了一下网上的资料,有两三种说法, 一种是将dataType :'json',改成你相应的版本, ...
- jQuery的ajax的post请求json格式无法上传空数组
问题描述:在和后端对接时,使用jquery的ajax的post方式向后端传递一序列约定好格式的对象数组.遇到了一个现象:如果对象中的数组是空数组,那么在请求参数中是不会出现的. 以下是数据的对比: ...
- 使用JSONP,jQuery的ajax跨域获取json数据
网上找了很多资料,写的不错,推荐下: 1.深入浅出JSONP--解决ajax跨域问题 (http://www.cnblogs.com/chopper/archive/2012/03/24/240394 ...
- jquery 调用ajax返回json
ie调用可以,火狐和chrome皆失败,找了半天原因. 被屏蔽了. 火狐和chrome 对同一个域名不同端口的调用也严格限制,不给调用.只能用jsonp. 查看网络的返回状态,错误信息,F12 很重要 ...
随机推荐
- 使用nginx构建限频、限速、限并发的应用保护层
使用nginx构建限频.限速.限并发的应用保护层 nginx本身提供了基础的限频.限速.限并发连接等能力. 限频 基于uri等限制某一个客户端,某类客户端持续时间段内建立连接的次数. 限速 限制客户端 ...
- [转帖]linux命令dd
linux命令dd dd 是diskdump 的含义 之前学习过 总是记不住 用的还是少. http://embeddedlinux.org.cn/emb-linux/entry-level/20 ...
- mysql数据库的 varchar 和 char 的区别
char是存储字符(无论字母还是汉字都最多存255个) char(20)表示这个字段最多存20个字符 如果存了16个字符 那么也会占用20个字符的空间 varchar是存储字节(1个字母1个字节 ...
- 【Python基础】05_Python中的while循环
1.程序的三大流程介绍 顺序 —— 从上到下,顺序执行 分支 —— 根据条件判断,决定代码的分支 循环 —— 让特定代码执行 2.while 基本语法 while 条件(判断 计数器 是否达到 目标次 ...
- LeetCode 328——奇偶链表(JAVA)
给定一个单链表,把所有的奇数节点和偶数节点分别排在一起.请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性. 请尝试使用原地算法完成.你的算法的空间复杂度应为 O(1),时 ...
- Memcached和Spring集成开发
xml配置文件 <bean id="memcachedPool" class="com.danga.MemCached.SockIOPool" facto ...
- HTTP API自动化测试
重构:发现测试的价值 回到起点,测试要解决什么问题,为什么要做API自动化测试平台?做这个平台,不是为了满足老板的提倡全民自动化的口号,也不是为了浮夸的KPI,更不是宣传自动化可以解决一切问题,发现所 ...
- Kirinriki 2017多校
由于每个串的长度为5000,我们去枚举两个自串的对称点(这里注意一下,枚举的时候有两种情况的区间),然后用尺取法爬一遍. ac代码: #include<iostream> #include ...
- lesson10总结
package lesson10; public class Fa { String name="I am Fa"; static{ System.out.println(&qu ...
- Attribute预定义特性
转载自:http://blog.csdn.net/wangyy130/article/details/44241173 一.什么是Attribute Attribute 类将预定义的系统信息或用户定义 ...