jquery form, spring mvc 에 폼 제출

5109 단어 spring mvc
jquery. form 은 form 을 봉 하여 폼 을 직접 제출 할 수 있 습 니 다. ajax 형식 으로, spring mvc 에는 model Attribute 속성 이 있 습 니 다. 폼 에서 보 내 온 매개 변 수 를 대상 유형 으로 포장 할 수 있 습 니 다. 이렇게 하면 매개 변 수 를 제출 할 때 처리 하 는 것 이 훨씬 편리 합 니 다 (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>

 
$('\ # form 1'). ajaxform (options) 은 폼 의 데 이 터 를 렌 더 링 합 니 다. 제출 할 때 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 에 제출 할 수 없습니다.

좋은 웹페이지 즐겨찾기