2014-05-15 71 views
1

我試圖讓我的網頁更高效,所以我得到了類似下面的問題中:轉發頁面的HTML DIV

是否有可能與RequestDispatcher的一個新Jsp頁面轉發到從HTML DIV Servlet?

像這樣:

someServlet.java

public void doGet(HttpServletRequest req, HttpServletResponse resp) 
     throws IOException, ServletException { 

    // do something to send a page to the HTML div in page.jsp 
} 

page.jsp

<div> <!-- the forwarded page must inside here --> </div> 
+0

也許使用[http://www.w3schools.com/tags/tag_iframe.asp](http://www.w3schools.com/tags/tag_iframe.asp)。 – Mike

+0

@Mike如果你正在構建一個體面的Web應用程序,那不是你想要的。 –

回答

0

不要以這種方式使用include代替forwardpage.jsp

<div> <!-- insert any one --> </div> 

嘗試任何一個

<jsp:include page="includedPage" /> 

OR

<jsp:directive.include file="relative url" /> 

OR

<%@ include file="relative url" > 

OR

request.getRequestDispatcher("/WEB-INF/jsp/abc.jsp").include(request, response); 

如果一個頁面被轉發那麼它的前進頁面生成HTML內容的責任,但在的情況下,包括你可以合併多個HTML/JSP/Servlet的輸出,以生成最終的HTML內容。

瞭解更多關於JSP - The include Directive

1

那是不可能的。相反,您可以對您的servlet進行ajax調用,並且servlet可以以幫助視圖工作的格式返回必要的數據。一個例子是使用JSON格式編寫響應,然後在JavaScript中處理這個JSON響應,以相應地在視圖中添加必要的數據。

您也可以返回一個「text/html」響應,您在其中編寫<div>的內容並添加必要的內容,直接在視圖中寫入HTML響應。此方法中使用的響應在您的視圖(JSP)中更易於使用,但請注意,它只會將您的Servlet請求與單純的HTML響應耦合。

這個決定取決於你。

更多信息:

+0

@downvoter謹慎解釋原因? –

+0

+1。 JSON不是必需的。你可以返回文本,XML,HTML。任何由文字組成的東西。 – developerwjk

+0

@developerwjk是的,你是對的。 –