我正在使用 struts2(2.1.8 版)和 jquery 插件(1.8.3 版)来构建 Web 应用程序。
我正在设计一个简单的用例,在提交表单时,同一页面会加载到 ui 上,其方式是:1)如果出现验证错误,则应在同一页面上显示验证消息。2)如果有成功消息,该消息将显示在同一页面上。
我面临的问题是,在这两种情况下,struts2 都会重定向到 struts.xml 中指定的结果,但在单独的页面上并且现有页面会消失。
以下是我的主页。(我正在使用选项卡式面板来设计选项卡。)
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>
<html>
<head>
<sj:head jqueryui="true"/>
</head>
<body>
<s:url var="addUserUrl" action="inputUser"/>
<s:url var="deleteUserUrl" action="getDeleteUsers"/>
<sj:tabbedpanel id="mytabs2">
<sj:tab id="tab1" href="%{addUserUrl}" label="Add User"/>
<sj:tab id="tab2" href="%{deleteUserUrl}" label="Delete User"/>
</sj:tabbedpanel>
</body>
</html>
主页加载了从“addUserUrl”(inputUser.action)返回的数据,如预期的那样。(addUser.jsp 如下在 struts.xml 中配置)
但是当 addUser.jsp 被提交时,success-add.jsp 或 addUser.jsp 显示为单独的页面,而不是在同一页面中,这取决于下面 struts.xml 中配置的成功或验证错误
有什么方法可以将这两个页面都显示在主页本身而不是单独的页面中。
<action name="inputUser" class="addUserAction" method="input">
<result name="form">addUser.jsp</result>
</action>
<action name="addUser" class="addUserAction" method="addUser">
<result name="success">success-add.jsp</result>
<result name="input">addUser.jsp</result>
</action>