2013-12-09 95 views
2

我有一個名爲root.jsp的JSP頁面,因爲我有一個頁腳標籤,它取代了某些文本(即來自java端的屬性文件)。頁腳標籤本身使用基於登錄到網站的特定角色的腳本顯示。 root.jspglobal.js這裏包括文件的代碼片斷如何使用ceratin Javascript邏輯更新JSP頁面html元素?

**root.jsp** 
<%if(role.equals("Learner")){%> 
     <footer> 
      <p id ="par1">${userAccessMsg}.</p> 
      <p id ="par2">${userNoFolderAccessMsg}.</p> 
     </footer> 
     <%} %> 

我需要通過檢查,只顯示一個<p>標籤如果變量folders爲空。

**global.js** 
    var folders = getConfigLinkedFolders(); 
    function getConfigLinkedFolders { 
     return arrayList; /*["defssfsf","hrhrhhr"] */ 
} 

我應該怎麼做?

+1

請不要使用小腳本!閱讀[JSTL核心](http://www.tutorialspoint.com/jsp/jstl_core_if_tag.htm)。 –

回答

0

在DOM準備好處理程序中有一個方法,您可以在其中添加一個類到正在討論的元素中。

$(document).ready(function() { 
    var folders = getConfigLinkedFolders(); 

    if(folders && folders.length > 0) { 
      $('#par2').addClass('hide'); 
    } else { 
      $('#par1').addClass('hide'); 
    } 
}); 

function getConfigLinkedFolders { 
    return arrayList; /*["defssfsf","hrhrhhr"] */ 
} 

而在你的CSS文件中定義的類hide

.hide { 
    display : none; 
} 
+0

感謝這工作。我有個問題。在root.jsp中,我添加了$(document).ready()並添加了上面顯示的代碼。在root.jsp中,我有一段從不同的jsp頁面顯示出來的section.jsp。在該section.jsp中有另一個。 $(document).ready()函數。這是做這件事的好方法嗎?添加你的代碼後沒有任何東西被破壞。只是想確保這仍然是有效的實現 – pushya

+1

@pushya ..在jsp頁面本身中分配類,而不是爲這種情況編寫javascript總是一個更好的主意,在剛剛訪問'DOM'的用戶中,用戶可以刪除課程並查看下面的信息.. –

相關問題