[英]How can I access Java list elements from my client-side JavaScript code?
我有以下簡單的腳本,用於在<ul>
動態創建列表元素
<script type="text/javascript">
function generate(){
var arr = new Array();
<c:forEach items="${articles}" var="a" varStatus="status">
$('#listitems').append(
"<li>"+${a.title}+"</li>"
);
arr[${status.index}] ="${a.slideShow.images}";
</c:forEach>
}
</script>
我的問題源於images屬性。 每篇文章都有一張幻燈片,每張幻燈片都有一張圖像列表。 我想通過jave list.get(index);從圖像列表中拉出第一張圖像。 我想做類似“ $ {a.slideShow.images.get(0)}”的事情; 。 get()是列表對象中的java方法。
有任何想法嗎?
在EL中,您可以使用大括號符號按索引訪問List
元素。 因此,應執行以下操作:
arr[${status.index}] = "${a.slideShow.images[0]}";
這將在幕后完全按照您的建議進行: a.getSlideShow().getImages().get(0)
。
就是說,通常您可以像下面這樣聲明JS數組:
var arr = [];
JS不建議使用new
關鍵字。
正如對您的問題發表評論的人所暗示的那樣,這是一種常見的誤解。 到您的JavaScript執行時(在瀏覽器中),Java和JSP和JSTL不再可用。 JSTL / JSP在服務器上執行以創建源/ HTML,然后將其發送到客戶端。
在頁面上查看源代碼-可能會有所啟發。 您不應看到上面包含的JSP / JSTL。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.