簡體   English   中英

基於Web或移動應用程序視圖限制JSP內容

[英]Restrict JSP content based on web or mobile view of application

在我的JSP頁面中,我包含了另一個JSP,我希望根據源頁面的視圖來限制它,無論是移動還是Web。

<%@include file="/templates/jsp/header/search.jsp" %>

這是我的include語句,我有一個JavaScript函數,用於確定是否是桌面視圖。 下面是我的JS功能:

function isDesktopView(){
    if (bootstrapEnv == "lg" || bootstrapEnv == "md") {
        return true;
    }
}

我想嘗試類似的東西

<s:if test = "%{isDesktopView()}">
    <%@include file="/templates/jsp/header/search.jsp" %>
</s:if>

正如@AxelH在評論中所說,你正在混合使用JS和JSP。 JSP在頁面發送到瀏覽器之前運行服務器端,JS由瀏覽器執行客戶端。 如果您希望頁面包含在服務器端,您可能需要為發送的請求添加參數( mypage/home?isDesktopView=true )。 在Controller中,您可以將參數添加到視圖中,然后您可以使用您必須使用的代碼來確定要包含的標頭。

<s:if test = "%{isDesktopView()}">
    <%@include file="/templates/jsp/header/search.jsp" %>
</s:if>

另一種解決方案是在加載頁面(JS)時檢查屏幕大小,然后將正確的內容加載到div中。 這意味着兩個單獨的請求,但完成工作。 雖然,如果它是您嘗試包含的頁眉,我不建議這樣做。

$(function() {
    if(bootstrapEnv == "lg" || bootstrapEnv == "md") {
        $('#myDiv').load('/templates/jsp/header/search');
    }
});

暫無
暫無

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

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