程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> JSP頁面嵌套,jsp嵌套

JSP頁面嵌套,jsp嵌套

編輯:JAVA綜合教程

JSP頁面嵌套,jsp嵌套



    項目中審批過程需要將業務表單嵌套在審批的頁面中。由於業務表單很多,前台已經axjx到了本次選擇的表單的地址。本來做的就是把這個鏈接放在審批頁面上,但現在需求的就是直接把這個biz表單嵌套在審批的頁面中。
初步的解決方案有jsp的include和iframe三種方法。
(1)靜態include  

用include偽碼實現,不會檢查所含文件的變化,適用於包含靜態頁面。使用場合主要是包含一些js包、css、系統的常量等。 
語法為:

<%@include file="biz.htm" %> 

 

(2)動態include  用jsp:include動作實現,它總是會檢查所含文件中的變化,適合用於包含動態頁面,並且可以帶參數。 
語法:

<jsp:include page="/jsp/oa/biz/<%=path[1]%/<%=path[2]%>.jsp>" flush="true"> 
<jsp:param value="<%=piId%>" name="piId"/> 
<jsp:param value="view" name="action"/> 
</jsp:include>

其中 flush="true"

在同一個 JSP 中,如果不斷 include 自己(源文件),在邏輯上會形成死循環。若默認情況下,服務器會等待該文件被讀到底端,然後才輸出到客戶端,並且銷毀該次訪問的 request 和 response。而當把 flush 屬性賦為真值時,在緩存累積了一定數據時,服務器會先提供一部分數據給浏覽器,並等待後續內容。由此,在簡單頁面中,該屬性不納入考慮,而在頁面包含大量數據時,為縮短客戶端延遲,可將一部分內容先行輸出。該屬性在 Servlet 中也有對應的應用。

 

(3) 最常見的 iframe 嵌套

<iframe id="logfrm" src="login_files/loginbox.jsp"  frameborder="0" scrolling="no"></iframe>

 



容易出現的問題

1,使用js方法時報錯 Javascript "Unterminated String Literal" Error。 對於這個問題主要是說js有空格、換行符等問題。把之間的空格去掉發現不報錯。

2,中文亂碼 

   在被嵌套的頁面加上一句話:  <%@ page contentType="text/html;charset=UTF-8" language="java"%> 如: 

 

<%@ page contentType="text/html;charset=UTF-8" language="java"%>
<nav class="navbar navbar-default" role="navigation">
        <div class="container">
            <div class="navbar-header">
                <a class="navbar-brand" href="/metamaintain-web/group">產品配置模塊</a>
            </div>
            <div>
                <ul class="nav navbar-nav">
                    <li class="dropdown"><a class="dropdown-toggle"
                        data-toggle="dropdown"> 刪除任務配置 <b class="caret"></b>
                    </a>
                        <ul class="dropdown-menu">
                            <li><a href="/metamaintain-web/group">任務分組</a></li>  
                            <li><a href="/metamaintain-web/task">任務項</a></li>
                        </ul></li>
                </ul>
            </div>
            <div class="navbar-header">
                <a class="navbar-brand" href="/metamaintain-web/testtabs">測試標簽頁</a>
            </div>
        </div>
    </nav>

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved