如何在 JSP 页面的脚本标签中使用 <c:forEach>?

Posted

技术标签:

【中文标题】如何在 JSP 页面的脚本标签中使用 <c:forEach>?【英文标题】:how to Use <c:forEach> in scripts tag on JSP page? 【发布时间】:2013-09-01 09:59:51 【问题描述】:

你好,jsp页面中如何在标签中使用循环?

我想用JSTL数据传入数据表

我的代码是这样的:

        $(document).ready(function() 


            /* Init DataTables */
            var startString = "[";
            var mainString = "";
            var endString = "]";


            var temp = $k.size();
        <c:forEach items="$k" var="stdn" varStatus="status">
            temp--;
            if (temp === 0) 
                mainString = mainString + "key:\"" + "$stdn.key" + "\",name:\"" + "$stdn.value.name" + "\",rollno:\"" + "$stdn.value.rollNo" + "\",marks:\"" + "$stdn.value.marks" + "\"";
             else 
                mainString = mainString + "key:\"" + "$stdn.key" + "\",name:\"" + "$stdn.value.name" + "\",rollno:\"" + "$stdn.value.rollNo" + "\",marks:\"" + "$stdn.value.marks" + "\",";
            
        </c:forEach>
                var finalString = startString + mainString + endString;
                var final = eval(finalString);

【问题讨论】:

【参考方案1】:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title><c:forEach>YOUR CODE </title>
</head>
<body>
<c:forEach var="i" begin="1" end="5">
   NAME <c:out value="$i"/><p>
</c:forEach>
</body>
</html>

这将产生以下结果:

NAME 1
NAME 2
NAME 3
NAME 4
NAME 5

以上是最简单的例子.. 以下是项目 var

<table>
      <c:forEach var="student" items="$person.person" varStatus="counter">
        <c:choose>
          <c:when test="$counter.count % 2 == 0">
            <c:set var="rowStyle" scope="page" value="odd"/>
          </c:when>
          <c:otherwise>
            <c:set var="rowStyle" scope="page" value="even"/>
          </c:otherwise>
        </c:choose>
        <tr class="ÃÂ$rowStyle">
          <td>$student.name</td>
          <td>$student.age</td>
          <td>$student.height</td>
        </tr>
      </c:forEach>
    </table>

这样你就可以使用&lt;c:forEach&gt; &lt;/c:forEach&gt; TAG..

如果您有任何具体问题,请解释

【讨论】:

它工作正常,但问题是它在 netBeans 中显示错误标记。 我在那个 所以如果你的目标是通过把它放在表中实现的,那么问题是什么?它可能是 netbeans 编辑器问题 有时它在编辑器中显示错误..但这实际上仅限于编辑器...不是一个真正的错误..在带有一些 js 文件的 eclipse 编辑器中遇到了这个问题

以上是关于如何在 JSP 页面的脚本标签中使用 <c:forEach>?的主要内容,如果未能解决你的问题,请参考以下文章

jsp 和 js,如何在js脚本中循环给jsp页面的表格添加一行,请看代码?

jsp如何选择性的显示页面元素

什么是jstl表达式,怎么应用

在jsp页面中使用jstl标签

在JSp页面文件中嵌入java语言要素的几种方式

jsp语法与标签