[英]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.