`
geeksun
  • 浏览: 965058 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jquery form向spring mvc提交表单

 
阅读更多

jquery.form把form封装了一下,可以直接提交表单,以ajax的形式,而spring mvc中有个modelAttribute属性,可以把表单传来的参数包装成对象类型,这样在提交参数的时候处理起来就省事多了(PS:任何省事都是建立在费事研究的基础上),请看代码 

javascript:

 

<script type="text/javascript">
	function callBackGraFunc(responseText, statusText) {
	    if (responseText == 1) {
	    	// JQuery 获取select控件文本
	    	$("#fgraduationState1").text($("#fgraduationState").find("option:selected").text());
	    	
	    	// populate the form
			$("#fgraduationTime1").text($("#fgraduationTime").val());
			
			$("#fgraduationReason1").text($("#fgraduationReason").val());
			$("#fdipomaNumberr1").text($("#fdipomaNumberr").val());
			$("#fdegreeNumber1").text($("#fdegreeNumber").val());
			$("#fcerNumber1").text($("#fcerNumber").val());
	        $("#fdiplomaDate1").text($("#fdiplomaDate").val());
			$("#fdegreeDate1").text($("#fdegreeDate").val());
			$("#fcerDate1").text($("#fcerDate").val());
	    } else {
	    	alert("保存数据出错");
	    }
    }
    
    $(document).ready(function() {
    		var options = {
    			success: callBackGraFunc
    		};
    		
    		// jquery.form 提交表单
    		$('#form1').ajaxForm(options); 
</script>

 

$('#form1').ajaxForm(options)是渲染form里的数据,提交时以ajax方式提交,页面不显示刷新。

var options是一个回调函数,当form提交成功,action里有数据返回时,调用callBackFunc方法进行前端的数据的填充和渲染。

 

jsp:

 

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>

<form:form name="graduationForm" modelAttribute="_graduation" id="form1" action="${ctx}/enrollment/graduation/${_info.fid}/save" method="post">
    <input type="hidden" name="fid" value="${_info.fid}" />
	<input type="hidden" name="enrStudentInfo.fid" value="${_info.enrStudentInfo.fid}" />
	<input type="hidden" name="fcredit" value="${_info.fcredit}" />
	<input type="hidden" name="fappraisal" value="${_info.fappraisal}" />
<input type="text" id="cname" name="cname" value="" />
</form:form>
 

上面使用了spring的form标签,在题头需引进定义

 

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>

 

java:

 

	/**
	 * Destription Ajax 保存毕业、结业信息
	 * @param fid
	 * @param enrGraduation
	 * @param redirectAttributes
	 * @return
	 */
	@RequestMapping(value = "/{fid}/save", method = RequestMethod.POST)
	public String saveGra(@ModelAttribute("_graduation") EnrGraduation _graduation, HttpServletRequest request, HttpServletResponse response)
	{
		response.setContentType("text/plain;charset=UTF-8");  
		PrintWriter out = null;
		try {
			out = response.getWriter();
		} catch (IOException e) {
			e.printStackTrace();
		}
			
		// 判断信息是否存在
		if(!_graduation.isNew()){
			_graduation.setFupdatetime(new Date());
			_graduation.setFisRemove(0);
			enrGraduationService.update(_graduation);
			
	        out.print("1");
	        out.close();
		} else {
			out.print("0");
	        out.close();
		}
		
		
		return null;
	}
 

在类中接受“_graduation”参数,包装成对象,然后返回ajax数据。


使用jquery.form,需要引进jquery.form.js,在布局时,Jquery.js写在上面,因为先渲染jquery.js

 

<script type="text/javascript" src="${ctx}/static/js/jquery-1.7.1.min.js"></script>
<!-- jquery form js -->
<script type="text/javascript" src="${ctx }/static/js/jquery.form.js" ></script>

 

需要留意的是:在提交的form里必须至少有一个id属性,因为jquery获取属性是以id为标识的属性,如果没有id属性,form将无法提交到action。

 

分享到:
评论
1 楼 zqb666kkk 2016-02-17  
nice  非常好!

相关推荐

    layui 图片上传+表单提交+ Spring MVC的实例

    在本实例中,我们主要探讨了如何利用Layui库进行图片上传,同时结合表单提交和Spring MVC框架实现后端处理。Layui是一个轻量级的前端组件库,提供了丰富的UI组件,包括上传功能。以下是具体的知识点: 1. **Layui...

    spring mvc文件上传实现进度条

    这个场景通常涉及到前端的JavaScript或jQuery库(如jQuery File Upload)与后端的Spring MVC控制器之间的交互,以及可能的多线程处理来跟踪文件上传的进度。接下来,我们将深入探讨如何在Spring MVC中实现这一功能。...

    spring mvc+jquery easyui CRUD

    在这个过程中,jQuery EasyUI的组件大大简化了前端页面的构建,如dataGrid用于显示数据列表,dialog用于输入和确认操作,form用于表单提交等。同时,Spring MVC提供了强大的后端支持,包括模型绑定、数据验证、事务...

    spring mvc上传文件

    在本文中,我们将深入探讨如何使用Spring MVC框架与Ajax技术结合来实现文件上传的功能。Spring MVC是Spring框架的一部分,提供了一种模型-视图-控制器(MVC)架构模式,用于构建Web应用程序。Ajax(Asynchronous ...

    ajax提交form表单和上传图片

    本教程将详细讲解如何利用jQuery、jQuery Form插件以及Spring MVC框架来实现Ajax提交表单并上传图片。通过这种方式,用户无需等待页面刷新,即可完成操作,提升了交互性。 首先,`jquery.js` 是jQuery库的核心文件...

    ajax提交表单到后台

    总结来说,利用jQuery的AJAX和Spring MVC,我们可以实现前端表单的无刷新提交,提高用户体验,同时在后台进行数据处理。这种技术广泛应用于现代Web应用中,特别是在需要实时交互和数据更新的场景下。通过理解并实践...

    Spring下的AJAX和Form表单提交及单/多方法控制器比较

    而Form表单提交更适用于传统的提交行为,与Spring MVC的模型绑定和验证机制配合良好。单方法控制器适合简单的操作,而多方法控制器则适用于更复杂的业务逻辑。开发者应根据项目需求和功能复杂性选择合适的方法。

    【springmvc+jquery.form.min.js+spring文件上传】

    Spring MVC是一个强大的MVC框架,常用于构建Java Web应用,而jQuery Form Plugin则提供了一种便捷的方式通过AJAX进行表单提交,包括文件上传。在本项目"【springmvc+jquery.form.min.js+spring文件上传】"中,我们将...

    jqueryform分页

    首先,jQuery Form是一个插件,它扩展了原生JavaScript的表单提交功能,支持异步提交,即AJAX方式,这为实现无刷新分页提供了基础。无刷新分页意味着用户在切换页面时,页面不会完全重新加载,而是仅更新与分页相关...

    spring mvc 上传文件显示进度

    在Spring MVC的配置中,需要启用MultipartResolver来处理多部分表单数据。通常使用CommonsMultipartResolver或者StandardServletMultipartResolver。 ```java @Configuration @EnableWebMvc public class ...

    spring mvc 使用教程

    Spring MVC 提供了 `form:form`、`form:input` 等标签简化表单处理,例如: ```jsp &lt;form:form action="/user/save" modelAttribute="user"&gt; &lt;form:input path="name" /&gt; ... &lt;/form:form&gt; ``` 以上就是 ...

    spring mvc学习代码

    在Spring MVC中,可以使用jQuery的ajax方法或原生XMLHttpRequest对象,配合Spring的ResponseBody或者@ModelAttribute注解实现异步请求和响应。 4. **文件上传**:Spring MVC提供了一套处理文件上传的API,包括...

    spring mvc学习视频相关资料

    8. **Form Handling(表单处理)**:Spring MVC提供了便捷的表单绑定和验证机制,通过@ModelAttribute注解将表单数据绑定到Java对象。 9. **AJAX集成**:Spring MVC支持与jQuery、AngularJS等库进行AJAX通信,使用@...

    Spring-MVC-CRUD表单提交和ajax:Spring MVC CRUD应用程序(Spring MVC 5.x,hibernate 5.x,Bootstrap 3.x,JQuery,MySql)

    Spring MVC CRUD表单提交和ajax 在这里,我提供了一个有关“ Spring MVC CRUD应用程序”的项目。 在这个项目中,我同时显示了CRUD操作的表单提交和Ajax。 让我们看看我们在这里得到了什么: 作者: Md Mamun Abdul...

    spring mvc上传 下载

    本文将深入探讨Spring MVC在文件上传和下载方面的应用,以及如何结合FineUploader和jQuery实现这一功能。 首先,让我们了解Spring MVC在文件上传中的基本原理。在Spring MVC中,我们可以使用`@RequestParam`注解...

    spring第11章--ajax,上传下载,拦截器.rar_spring mvc_spring 下载_spring 使用ajax

    - **jQuery Ajax**:Spring MVC常与jQuery库结合使用,通过$.ajax()或$.get()、$.post()等方法发送Ajax请求。在后端,你需要创建一个处理Ajax请求的Controller方法,使用@RequestMapping注解来定义URL路径。 ```...

    ajaxupload在spring mvc4.2中实现简单文件上传

    在Spring MVC 4.2框架中实现AjaxUpload(异步文件上传)是一个常见的需求,它允许用户在不刷新整个页面的情况下进行文件上传,提供更好的用户体验。以下是对这一主题的详细阐述: 1. **AjaxUpload简介**: Ajax...

    spring mvc+mybatis+easyui

    EasyUI与Spring MVC结合,前端页面使用EasyUI组件,通过Ajax向后端发送请求。Spring MVC的Controller接收到请求后,调用Service层处理业务,再由Service层调用MyBatis的Mapper接口操作数据库。完成后,Controller将...

    spring mvc+ajax 文件上传

    本示例探讨的是如何利用Spring MVC后端框架与前端的Ajax技术来实现高效的文件上传,相较于传统的表单提交方式,这种方法具有无刷新、用户体验更佳的优势。以下是关于这个主题的详细讲解。 首先,我们需要理解Spring...

    Jquery实现表单异步提交.zip

    - **选择表单元素**:使用jQuery选择器如`$("#formId")`选取要提交的表单。 - **监听表单提交事件**:绑定`submit`事件处理器,如`$("#formId").on("submit", function(event) { ... })`,防止默认的表单提交行为...

Global site tag (gtag.js) - Google Analytics