2012-11-22 107 views
0

我正在编写一个向导,用于在我的应用程序中使用Spring MVC创建一个用户。在每一步,控制器都会为完成的向导字段设置会话属性。将JSP文件包含在另一个JSP文件中

我希望向导看起来不管它在哪个页面上,除了每个页面的字段,显然。例如,页面顶部的菜单和链接以及底部的按钮应保持不变。

我有以下的JSP

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
    pageEncoding="ISO-8859-1"%> 
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
     <title>Create a new User</title> 
    </head> 

    <body> 
     <h1>User Creation Wizard</h1> 
     Step <c:out value = "${pageNum}"/>/<c:out value = "${pageMax}"/> 

     <form action="" method="POST"> 
      <jsp:include page="userform${pageView}.jsp"/> 

      <input name = "currentPage" type = "hidden" value = "${pageNum}"/> 
      <c:if test = "${pageNum > 1}"> 
       <input name = "prev" type = "submit" value = "Previous" /> 
      </c:if> 

      <c:if test = "${pageNum < pageMax}"> 
       <input name = "next" type = "submit" value = "Next" /> 
      </c:if> 

      <c:if test = "${pageNum == pageMax}"> 
       <input name = "submit" type = "submit" value = "Finish" /> 
      </c:if> 
     </form> 
    </body> 
</html> 

在我包括JSP,做我需要删除<html><head>,并<body>标签?以上代码基于this example

回答

1

是的,你需要从包含的JSP文件中删除<html>,<head><body>标签。因为它们已经存在于包含文件中,所以它们会导致无效的HTML。

只有您想要改变的内容才会包含在您所包含的JSP文件中。其他所有内容(包括必需的<html>,<head><body>标记)都将位于包含的JSP文件中。

+0

我需要taglib标签吗? –

+0

@SotiriosDelimanolis如果您想要使用''标签,例如在您要包含的JSP内部,那么您也需要该JSP中的taglib指令。 –

+0

太好了,谢谢! –