如何从jstl foreach访问jQuery的枚举值

时间:2015-03-12 19:32:09

标签: javascript jquery jstl

我有一个棘手的问题,需要一些帮助。在SomeEnum中,我将id,name和icon作为参数。

在html中我有一个这样的表:

<%  pageContext.setAttribute("itemEnum", SomeEnum.values()); %> 
<table id="item_table">    
<c:forEach var="entry" items="${itemEnum}">
    <tr class="item" id="${entry.name}">
        <td><c:out value="${entry.id}"/></td>
    </tr>
</c:forEach>
</table>

在我的jquery中,我需要为每个枚举对象获取图标和名称,并相应地更新行值。

$("#button").click(function(){
    $('#item_table tr').each(function(item, i) {
    var name = ?? 
    var icon = ??
    });
});

如何?谢谢!

1 个答案:

答案 0 :(得分:0)

根据你给我们的内容,我们并不清楚&#34; icon&#34;是来自。但是,我会定期提供我所做的事情,看看它是否能解决你的问题。

<%  pageContext.setAttribute("itemEnum", SomeEnum.values()); %> 
<table id="item_table">    
<c:forEach var="entry" items="${itemEnum}">
    <tr class="item" id="${entry.name}" data-name="${entry.name}" data-icon="${entry.icon}">
        <td><c:out value="${entry.id}"/></td>
    </tr>
</c:forEach>
</table>

然后在你的jQuery中你可以这样做:

$("#button").click(function(){
    $('#item_table tr').each(function(item, i) {
        var name = $(this).attr("data-name");  // could also be $(this).data("name");
        var icon = $(this).attr("data-icon"); // could also be $(this).data("icon");
    });
});