이 글은 ajax페이지 간 제출 양식에 대한 정보를 중심으로 모든 사람에게 자세히 소개합니다. ajax에 관심이 있는 친구들은 이전 전제를 참조할 수 있습니다. 토큰 비밀번호 확인 및 리디렉션을 처리하는 것 외에도 자주 사용되는 또 다른 방법은 완료 후 현재 페이지를 닫고 이전에 요청이 있었던 페이지를 새로 고치는 것입니다. 전송된.
artDialog.js는 여기서 사용됩니다
1, 파일 구조
2, user.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib uri="/struts-tags" prefix="s"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>user列表</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <script type="text/javascript" src="/MySSH2/jquery-1.7.js"></script> <script type="text/javascript" src="/MySSH2/artDialog.js?skin=default"></script> <script type="text/javascript"> function openA(){ window.open("/MySSH2/user/manage_addUI"); } </script> </head> <body> <br/> <a href="<s:url action="manage_addUI" namespace="/user"/>">添加用户</a> <a href="javascript:void(0)" onclick="openA()">添加用户</a> <br/> 用户列表:<br/> <s:iterator value="#request.users"> id:<s:property value="id"/><br/> name:<s:property value="name"/><br/> </s:iterator> </body> </html>
3, userAdd.jsp
rrre 에
4 , UserManageAction.java
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib uri="/struts-tags" prefix="s"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>用户添加</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <script type="text/javascript" src="/MySSH2/jquery-1.7.js"></script> <script type="text/javascript"> function AddUser(){ var submitData = $('#userForm').serialize(); console.log(submitData); $.ajax({ type : "post", url : "/MySSH2/user/manage_add", cache : false, data: submitData, dataType : 'json', success : function(result) { <span style="white-space:pre"> </span>if(result.success){ window.opener.art.dialog({time:2,content:'保存成功'}); setTimeout(function(){window.opener.location.reload();},3); } else{ <span style="white-space:pre"> </span> window.opener.art.dialog({time:2,content:'保存失败'}); setTimeout(function(){window.opener.location.reload();},3); } window.close(); }, error : function(XMLHttpRequest, textStatus, errorThrown) { alert("error"); } }); } </script> </head> <body> <s:form id="userForm" action="manage_add" namespace="/user" method="post"> 用户名:<s:textfield name="user.name"/><br/><s:token></s:token> <input type="button" value="保存" onclick="AddUser()"/> </s:form> </body> </html>
페이지 효과
양식 데이터를 직렬화하려면 $('#userForm').serialize();를 사용하세요. 2,content:'저장 성공'}); 그런 다음 window.open(또는 상위 페이지로 이해됨)을 사용하여 페이지를 반환하고 artDialog 플러그인의 예약된 닫기 대화 상자
setTimeout(function(){window.opener.location을 호출합니다. .reload();},3); window.open을 사용하여 페이지를 새로 고치려면 타이머를 사용하십시오(또는 상위 페이지로 이해하십시오). 대화 상자 및 다시 로드의 시간 설정을 다시 조정해야 합니다.
위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다! !
관련 권장사항:
Ajax 양식 유효성 검사의 예
위 내용은 Ajax 크로스 페이지 제출 양식의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!