`

利用AJAX为JSP页面传递一个包含了若干对象的List集合

阅读更多
首先说明一下,我现在做的项目中前台用到的是jqm,利用的ajax向后台传递数值,返回的是json格式的数据。为了使大家一目了然,我把重要的代码张贴出来吧,并且个别地方有注释!
前台页面:


<link rel="stylesheet"
			href="${pageContext.request.contextPath }/js/jquery.mobile-1.0.1.min.css">
		<script src="${pageContext.request.contextPath }/js/jquery-1.6.4.min.js"></script>
		<script type="text/javascript">
		$(function(){ //在页面加载后激活函数   
			 $("#history").bind("click", function() {  //为DOM对象中属性id="history"的元素绑定click事件,执行回调函数
				 $.ajax({
					 type:"post",//以post方式向后台提交数据
				     url:"${pageContext.request.contextPath}/lcecodelog/listL_cecodelog.action?uid=-6196080717979582463",//提交到后台的地址
				     data:{isAjax:true},//需要传递的数据 也可以这样写data:isAjax=true,username="Tom", 注意data是键值对应的数据
					 dataType:"json",//返回数据的格式是json
					 success:function(data){//后台代码执行成功后,执行的回调函数
						 console.log(data.list[0].exname);//在控制台上输出,可以测试一下是否返回正确数据.注意:这里的list是和后台中的放在data中的list一样的。
						 $.mobile.changePage("${pageContext.request.contextPath}/right/scancodehistory/listCodeHistory.jsp","slideleft", false, false); 
						 //$.mobile.changePage()是jqm API的方法
					 }
				 });
				});
			}); 
		</script>
		<script
			src="${pageContext.request.contextPath }/js/jquery.mobile-1.0.1.min.js"></script>




后台Action类:
	//使用的是struts2,返回的是String类型的方法。
	public String listL_cecodelog() {
		//注意:isAjax()和printJSONData()都是我写好的封装类,在这里就直接拿过来调用了。
		
		Long uid = getParameterLong("uid");// 从url中获取参数uid 
		
		List<L_cecodelog> list = lcecodelogDAO.ListL_cecodelog(uid); 
		
		try {
			if(!isAjax()){//判断是不是ajax请求
				return null;
			}
			JSONObject data = new JSONObject();
			data.accumulate("list", list);//注意:这个list的名字和前台页面中list的名字需要一致。
			setSession("list", list);//之所以把list放在session会话中是因为需要在另一个页面循环list输出结果。
			printJSONData(data);
		} catch (ServletException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} 
		return null; 
	}

listCodeHistory.jsp中
//在这里可以循环放在session中的list
<c:forEach items="${list }" var="code" varStatus="index">
						<li>
							<a
								href="${pageContext.request.contextPath}/lcecodelog/findT_exhibitByExid.action?exid=${code.exid}&id=${code.id}">${code.exid}
								${code.exname}</a><span class="ui-li-count">${code.datetime}</span>
						</li>
					</c:forEach>



</body>
	<%session.removeAttribute("list"); %>//为了信息安全,利用完session会话中的list之后,需要移除会话。
</html>

就这些了,希望能给大家一点小帮助吧!
分享到:
评论
2 楼 fengyunlouyanyu 2016-01-12  
   
1 楼 xuxiaoyu 2013-02-22  
 

相关推荐

    ajax传递list对象数组

    本篇将详细介绍如何通过AJAX来传递一个List对象数组,并解析其中涉及到的关键技术点。 #### 二、知识点概览 1. **前端JavaScript处理List对象数组** 2. **使用jQuery的$.ajax方法发送POST请求** 3. **后端接收List...

    json2 ajax返回list处理 在jsp页面 遍历

    在这个例子中,`jsonData`应该在服务器端已经被转换为一个Java集合对象并传递给了JSP。 总结来说,这个场景涉及了使用JSON2处理JSON数据,通过AJAX异步获取这些数据,然后在JSP页面上使用JavaScript进行遍历和显示...

    ajax+jsp局部页面刷新

    本文将深入探讨如何运用Ajax与JSP实现局部页面的自动刷新,并通过一个具体的示例来展示这一过程。 ### Ajax与JSP的融合 Ajax(Asynchronous JavaScript and XML)是一种用于创建快速动态网页的技术,它允许在后台...

    ajax 传递 jsp

    ajax 动态传递页面, js 的ajax编写,使用id辨识传递对象

    ajax实现jsp页面表格

    在本案例中,“ajax实现jsp页面表格”是一个教学示例,它展示了如何利用AJAX技术动态地从数据库获取数据,并在JSP页面的表格中展示,而无需用户感知到页面刷新。 首先,我们来理解一下JSP(JavaServer Pages)。JSP...

    AJAX于jsp结合的一个例子

    而"FalstAJAX"可能是示例中的一个错误拼写,可能是指一个名为"FalseAjax"或"FallstAjax"的文件,它可能包含了错误的AJAX实现或者一个用于演示错误处理的例子。 总的来说,这个例子展示了如何使用AJAX与JSP协同工作...

    ajax +jsp 页面跳转

    ajax+jsp 带参数的页面跳转。

    Java Ajax分页,jsp ajax分页

    在JSP中,我们可以创建一个处理AJAX请求的Servlet。Servlet是Java Web应用中的一个组件,用于接收HTTP请求并返回响应。在分页场景中,Servlet会根据请求参数(如当前页数)查询数据库并返回所需的数据。 接下来,...

    JSP+Jquery+JSON 集合实现AJAX

    jQuery是一个流行的JavaScript库,它简化了JavaScript的DOM操作、事件处理、动画制作以及Ajax交互。在AJAX场景中,jQuery提供了一种简单的方式来发起异步请求,如`$.ajax()`或`$.getJSON()`函数,可以轻松地从服务器...

    Ajax的JSP例子

    提供的压缩包文件名称为Ajax,可能包含了JSP页面、Servlet、CSS样式表和JavaScript脚本等资源。你需要将这些文件部署到Tomcat服务器上,通过浏览器访问指定URL来运行这个Ajax JSP例子。 8. **学习与实践**: 这个...

    用Ajax实现jsp页面树状结构

    3. **Ajax请求**:编写一个Ajax函数,使用jQuery的`$.ajax()`或`$.get()`方法,向服务器发送请求获取子节点数据。请求的URL可以是后台的Servlet或JSP,它们负责处理请求并返回JSON格式的子节点数据。 4. **处理响应...

    Ajax+JSP.rar_ajax_ajax jsp download_java ajax jsp_jsp ajax_jsp在线

    1. `listajax.html` 可能是一个展示列表的页面,其中包含触发Ajax请求的按钮或链接。 2. `postajax.jsp` 是接收Ajax请求的JSP页面,处理请求后返回数据。 3. `www.pudn.com.txt` 可能是下载链接或参考文档,可能与...

    利用ajax和jsp,JavaScript实现的注册系统

    在“luckregister”项目中,开发者可以学习到如何结合这些技术实现一个完整的注册流程,包括前端的交互设计、JavaScript的事件处理和Ajax调用,以及后端的JSP编程和数据库操作。通过实践这个项目,开发者可以提升Web...

    Ajax+jsp注册验证用户

    总的来说,"Ajax+jsp注册验证用户"的项目涵盖了前端与后端的交互、数据库操作、用户输入验证以及安全防护等多个方面,是一个综合性的Web开发实践。通过学习和实现这样的例子,开发者可以深入理解Ajax和JSP在实际项目...

    超简单的ajax+jsp实现2级联动!!

    在上述代码中,当一级选项改变时,AJAX发送一个GET请求到erji.jsp,并将选定的一级值作为参数传递。erji.jsp接收到请求后,根据参数值查询数据库获取相应的二级选项,然后以JSON格式返回。 erji.jsp的代码可能如下...

    2.1 JSP页面基本结构 JSP+AJAX

    2.1 JSP页面基本结构 JSP+AJAX2.1 JSP页面基本结构 JSP+AJAX2.1 JSP页面基本结构 JSP+AJAX2.1 JSP页面基本结构 JSP+AJAX

    Java+servlet+jsp页面ajax请求

    - **创建XMLHttpRequest对象**:在JavaScript中,需要创建一个XMLHttpRequest对象作为AJAX请求的载体。这个对象提供了open()、send()等方法来发送请求。 - **定义请求方法和URL**:使用open()方法设置请求类型...

    jQuery的Ajax实现异步传输List、Map

    在这个例子中,`data`参数是一个包含List和Map的对象,它们会被自动转换成JSON格式并作为POST请求的主体发送。在服务器端,你需要处理这些JSON数据,将其转换回List和Map,然后进行业务逻辑处理。 在服务器端,你...

    ajax 和jsp最简单实例

    这个函数首先创建一个XMLHttpRequest对象,它是Ajax的核心,负责与服务器进行通信。 `createXMLHttpRequest()`函数根据浏览器类型(IE或非IE)创建XMLHttpRequest对象。然后,`checkUser()`函数通过`open()`方法...

    ajax和JSP实现购物车

    **添加商品**:当用户点击“加入购物车”按钮时,Ajax发送一个包含商品信息的请求到服务器,JSP接收到请求后处理商品的添加操作,然后返回一个确认信息或错误消息。客户端根据返回的结果更新购物车显示。\n2. **...

Global site tag (gtag.js) - Google Analytics