簡體   English   中英

我們如何重用在JSP Page中定義的JSP塊; 沒有創建另一個JSP文件?

[英]How can we reuse JSP chunk defined within JSP Page; without creating another JSP file?

我在JSP的不同位置有14段代碼,而在JSP的14個位置上卻不斷重復:

<div>
 <table>
    <tbody>
        <tr>
            <td><spring:message code="economy"/></td>
            <td>${spm}</td>
       </tr>
       <tr>
            <td><spring:message code="nok"/></td>
            <td>${spm.nok}</td>
       </tr>
    </tbody>
 </table>
</div>

要求在一處定義以上塊並重用14次。

我知道我可以創建其.JSPF並使用<%include再次包含它。

但是我們要避免這種情況,因為我也必須將其應用於其他塊,並且被告知不要制作太多文件。

那么,有什么方法可以在頁面內部(在頁眉,頁腳或HTML元素中的某個位置)定義JSP塊,並在負載的多個位置重用? 請問是否有任何不清楚的問題

更新 :回答時,請同時考慮以下內容:

<c:forEach varStatus="loop" items="${economy}" var="spm"> 
  //Code Chunk spm.nok
</c:forEach>

<c:forEach varStatus="loop" items="${economy1}" var="spm"> 
 //Code Chunk spm.nok
</c:forEach>

您可以在不顯示任何內容的索引頁上添加此數據,並且每當要復制該div並使用jQuery或Javasscript粘貼時就可以添加。

您的要求很典型,但很有趣,理想的方法是使用可重用的代碼制作JSP / JSPF並將其包含進去,就像您所說的那樣。

我建議與大家討論並考慮使用JSP模板或其他模板機制,但是考慮到您的要求,我認為最好的選擇是:

<!DOCTYPE html>
<html>
<head>
    <script lang="javascript">
        var reusableHtml = "<div>  <table border='1'>    <tbody>        <tr>            <td>0</td>            <td>${spm}</td>       </tr>       <tr>            <td>A</td>            <td>B</td>       </tr>    </tbody> </table></div>";

        function pushReusbalecode(){
            alert('1');
            document.getElementById("demo1").innerHTML = reusableHtml;
            document.getElementById("demo2").innerHTML = reusableHtml;
        }

    </script> 
</head>
<body onload="pushReusbalecode()">

<div id="demo1"></div>

<br>##########################<br>

<div id="demo2"></div>

<br>##########################<br>

</body>        



</html>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM