不能在jquery中迭代java集合

Not able to iterate over java collection in jquery

本文关键字:java 集合 迭代 jquery 不能      更新时间:2023-09-26

我想在jquery中迭代一个javascript对象集合。当我放置警报时,我能够看到正在打印的集合,但我无法在jquery中迭代该集合的元素。我该怎么做呢?我试着:

    ${mergedConfirmedTechnologies}.each(function(index,element){
    alert("here "+element.product); 
    });

,但它没有工作,虽然当我做:

    alert(${mergedConfirmedTechnologies}); 

则打印对象集合有没有人建议我如何在jquery中迭代集合?

要在Javascript中遍历Java集合,首先需要将其转换为Javascript可以理解的对象。您可以执行以下操作:

1-将Java Collection转换为JSON字符串或直接写入Collection,使用EL到Javascript字符串。

你可以在jstl中使用forEach然后你可以将它推入javascript中的数组

<script>
<c:forEach items="${mergedConfirmedTechnologies}" var="item">
    alert(${item.product});
</c:forEach>
</script>

要使用JSTL标记,请使用以下import语句

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

您的示例是在页面的DOM元素中进行循环。你必须使用JS循环,而不是jQuery。例如:

 for (int i = 0; i < mergedConfirmedTechnologies.lenght; i++)
 {
     alert(mergedConfirmedTechnologies[i]);
 }

编辑:fixed alert() typo