实现:
JSP:
<iframe name="ok.jsp" style="display:none"></iframe>
<html:form action="/index" target="ok.jsp">
<html:submit></html:submit>
</html:form>
Action:
request.setAttribute("alert", 1);//设置弹出对话框的内容
request.setAttribute("url", "index.do");//跳转URL
request.setAttribute("runURIStatus", 1);//是否跳转状态
return mapping.findForward("go_ok.jsp");
Action配置文件:
<action
attribute="indexForm"
name="indexForm"
path="/index"
scope="request"
type="com.yourcompany.struts.action.IndexAction" >
<forward name="go_ok.jsp" path="/ok.jsp"></forward>
</action>
ok.jsp:
<%@ page language="java" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
</head>
<body>
<c:if test="${runURIStatus==1}">
<script type="text/javascript">
alert(${alert});
window.location.href='${url}';
</script>
</c:if>
<c:if test="${runURIStatus==0}">
<script type="text/javascript">
alert(${alert});
</script>
</c:if>
<c:if test="${runURIStatus==null}">
<script type="text/javascript">
alert(${alert});
</script>
</c:if>
</body>
</html>
呵呵! 真有点这样的效果。大家不妨实验一下! 挺有意思的!
说一下思路:
在页面中定义一个<iframe name=iframename style=display:none>这样的标签,然后将表单的target=iframename action中随便写,在mapping中找到地址。这样就能打到不刷新页面,视觉看上去有点Ajax效果。