`

ajax提交并根据返回的值重写标签

 
阅读更多
Jsp:

function saveCalendar(id){
		var startTmDetail = $("#startTimeDetail"+id).val();
		var startHour = $("#startHour"+id).val();
		var endTmDetail = $("#endTimeDetail"+id).val();
		var endHour = $("#endHour"+id).val();
		var content = $("#contentDetail"+id).val();
		var param = [
						{name:'startTmDetail', value:startTmDetail},
						{name:'startHour', value:startHour},
						{name:'endTmDetail', value:endTmDetail},
						{name:'endHour', value:endHour},
						{name:'content', value:content},
						{name:'id', value:id}
					];
		$.ajax({
			type: 'post',
			url: '<%=path %>/calendarInfo/updateCalDetail.action',
			async: false,//想要执行完这个ajax再执行下边代码,就要设置成false
			data: param,
			dataType: 'text',
			success: function(text){
				var jsonObj = eval("("+text+")"); 
				var divStr = "";
				var divContent = "";
				//重写divStr
				divStr = "<div id='showTm"+jsonObj.id+"'>"+jsonObj.startTime+" 到 "+jsonObj.endTime+"&nbsp;&nbsp;<input style='border: 1px solid #777;' type='button' value='编辑' onclick='calendarEdit("+jsonObj.id+")' /></div>";
				divContent = "<div id='showContent"+jsonObj.id+"'>"+jsonObj.content+"</div>";
				$("#showTm"+id).html(divStr);
				$("#showContent"+id).html(divContent);

				$("#showTm"+id).show();
				$("#hidTm"+id).hide();
				$("#showContent"+id).show();
				$("#hidContent"+id).hide();
			},
			error: function(text) {
				alert('失败');
			}
		});
	}



Action:

@RequestMapping("/calendarInfo/updateCalDetail")
	public void updateCalDetail(HttpServletResponse res,HttpServletRequest request) throws Exception{
		res.reset();
		res.setContentType("text/html;charset=utf-8");
		PrintWriter pw = res.getWriter();
		
		String id = request.getParameter("id");
		String startTm = request.getParameter("startTmDetail");
		String startHour = request.getParameter("startHour");
		String endTm = request.getParameter("endTmDetail");
		String endHour = request.getParameter("endHour");
		String content = request.getParameter("content");
		
		String startStr = startTm + " " +startHour + ":00:00";
		String endStr = endTm + " " +endHour + ":00:00";
		CalendarDetail calDetail = new CalendarDetail();
		calDetail = calDetailService.findCalendarDetailById(Long.parseLong(id));
		calDetail.setStartTime(startStr);
		calDetail.setEndTime(endStr);
		calDetail.setContent(content);
		
		calDetailService.update(calDetail);
		
		JSONObject jsonObject = JSONObject.fromObject(calDetail);
		System.out.println(jsonObject); 

		pw.print(jsonObject);
		pw.flush();
		pw.close();

	}
分享到:
评论

相关推荐

    Ajax上传实现根据服务器端返回数据进行js处理的方法

    在处理Ajax上传时,核心点在于异步请求(Ajax)与服务器端的交互,并根据服务器返回的数据做出相应的JavaScript处理。这种方法的优点是能够改善用户体验,因为它能够在不刷新整个页面的情况下与服务器通信,更新页面...

    springMVC自定义防重复提交

    本篇将详细介绍如何在Spring MVC中自定义实现防重复提交机制,特别是通过使用“token”标签的方式。 首先,理解防重复提交的核心原理:在客户端请求时生成一个唯一的标识(token),并将这个标识存储在服务器端和...

    struts2.0 标签清单

    `&lt;s:action&gt;` 标签用于执行一个Action,并返回其结果。这通常用于在页面中嵌入Action的结果,例如显示Action处理后的数据或错误信息。 ```xml &lt;!-- Action执行后返回的内容将被展示在这里 --&gt; ``` ### 3. `...

    ACCP6.0S2jsp/Servlet/Ajax

    在【ACCP6.0 S2 jsp Servlet Ajax】的上机课后代码答案中,你可能会学习到如何用这些技术构建实际的Web应用,包括用户登录验证、动态数据展示、表单提交处理等常见场景。通过实践,你可以更好地理解这三者之间的协作...

    利用struts的token控制重复提交

    3. **生成Token**: 在JSP页面中,使用`&lt;s:token/&gt;`标签生成并隐藏Token。 ```jsp &lt;!-- 表单元素 --&gt; &lt;input type="hidden" name="struts.token" value="&lt;s:token/&gt;" /&gt; 提交" /&gt; ``` 4. **处理结果**: 如果...

    基于angularjsweui和nodejs重写的新闻客户端

    5. **前端-后端通信**:AngularJS通常通过$http服务与Node.js服务器进行AJAX通信,获取或提交数据。Node.js服务器可以调用API接口,处理数据库操作,然后将数据以JSON格式返回给前端。 6. **数据库集成**:Node.js...

    框架笔试-tang.docx

    * 使用 Ajax 机制:使用 Ajax 来提交表单,并在提交完成后清空表单 16. XML 全文名称?XML 文档定义有几种形式? XML 全文名称是Extensible Markup Language,XML 文档定义有多种形式,包括: * 文档类型定义...

    HTML 页面直接调用 php 文件的方法

    综上所述,HTML页面调用PHP文件涉及到Web开发的基本原理,包括HTML表单提交、AJAX请求、服务器配置、URL重写、安全防范以及应用架构模式等多个知识点。理解并熟练运用这些技术,可以更好地实现动态网站的开发和维护...

    ASP论坛网站实例开发源码——月亮岛论坛实例开发.zip

    它允许开发者在服务器端编写脚本,将HTML、VBScript或JScript等语言嵌入到网页中,以便在用户请求页面时执行并返回结果。ASP的核心优势在于其易于学习、丰富的功能库以及与.NET Framework的集成,使得开发高效且功能...

    ASP源码—实用技术网文章管理系统.zip

    这些脚本在服务器上执行,并返回HTML页面到客户端浏览器。这样的动态生成页面可以根据用户请求或数据库信息进行实时更新。 文章管理系统的核心功能可能包括以下几点: 1. **用户认证与权限管理**:系统可能有登录...

    struts2.0的总结

    相较于 Struts1.x 版本,Struts2 提供了更强大的功能与灵活性,它不仅支持传统的表单提交方式,还提供了更为灵活的 Ajax 支持,以及更丰富的标签库等特性。 #### 二、Struts2架构与配置 1. **基础配置**:Struts2 ...

    struts2轻松入门

    通过OGNL,你可以方便地访问Action的属性,或者将Action的值注入到JSP的标签中。 在实际开发中,Struts2提供了丰富的插件支持,如Tiles插件用于页面布局,Freemarker或Velocity插件作为模板引擎,以及Ajax插件实现...

    ASP实例开发网站源码——测试完整的某网上售楼展示系统.rar

    10. **SEO优化**:为了提高搜索引擎的可见性,网页可能会包含元标签和URL重写等SEO最佳实践。 11. **响应式设计**:考虑到不同设备的屏幕尺寸,该系统可能采用了响应式设计,确保在手机、平板电脑和桌面设备上都能...

    于笑扬java综合知识点总结-必背.pdf

    Hashtable 不允许null 键或值,而 HashMap 允许null 键或值。 九大隐式对象 在 JSP 中,有九大隐式对象,分别是request、response、pageContext、session、application、out、config、page 和 exception。这些对象...

    基于jsp+servlet+mysql在线考试管理系统源码案例设计.zip

    Servlet通过继承HttpServlet类,并重写doGet和doPost方法来处理GET和POST请求。 三、MySQL数据库 MySQL是一种关系型数据库管理系统,广泛应用于Web应用中。本系统选择MySQL作为数据存储,因为它具有良好的性能、高...

    java面试题

    Java面试题涵盖了许多... - 在表单中加入Token标签,并在配置文件中配置拦截器。 以上只是部分面试题的关键知识点,每个主题都值得深入学习和理解。在实际面试中,面试官可能会深入探讨这些知识点的具体应用和细节。

    Java综合笔试题.docx

    1. 值传递和引用传递:值传递是指函数调用时,实参将值复制一份给形参,改变形参不会影响实参;引用传递则是实参地址传递给形参,形参的改变会影响到实参。 2. 接口和抽象类:接口不包含方法实现,只能定义常量和...

    JAVA+ORALCE面试题汇总

    - **强大的表单处理能力**:提供了丰富的表单标签库,方便处理表单提交的数据。 - **国际化支持**:内置了资源文件管理机制,支持多语言应用。 - **插件式架构**:可以通过扩展Struts提供的组件,轻松添加新功能。 ...

    基于java+Servlet实现的前后端分离编写的机票预订管理系统.zip

    在机票预订过程中,如查询航班、提交订单等操作,很可能用到AJAX,以实现页面的无刷新更新。 6. **前端框架与库** 虽然标签中未明确指出,但在实际开发中,前端可能采用了如Bootstrap、Vue.js、React或Angular等...

    基于Servlet+Jsp+C3p0+Layui书籍管理系统.zip

    2. 前端页面通过AJAX或者表单提交的方式发送HTTP请求到服务器。 3. Servlet接收到请求后,根据请求类型调用相应的业务逻辑,如查询数据库、更新数据等。 4. 业务逻辑处理完毕后,Servlet将结果封装成JSON或其他格式...

Global site tag (gtag.js) - Google Analytics