以HTML格式打印ArrayList并使用输入框匹配每个项目

时间:2015-06-02 19:06:18

标签: java html jsp servlets arraylist

我正在处理一段代码,其中有一个项目的ArrayList。我把它放在一个使用HTML的网页上,我想打印一个列表中的所有项目,每个项目旁边都有一个输入字段,用户可以输入数量 - 有点像购物车。

我如何在HTML文档中完全执行此操作?我目前正在Java代码中做这个,但我知道这是不好的做法,我不知道如何检索类型中的数字 - 我该怎么做?

使用JSP,我会更好吗?如果是这样,你能否就如何做到这一点给我一些建议?

提前致谢。这是我到目前为止一直在使用的代码。

int counter = 1;
out.println("<html><body><br><br>");
for (Gear g : gear) {
    out.println(counter + ". " + g.toString() + "&nbsp; &nbsp; &nbsp; &nbsp; <input type=\"text\" name=\"" + counter + "\">" + "<br>");
    counter++;
}
out.println("<br><br><br> <input type=\"submit\" value=\"Enter\" name=\"en\" </html></body>");

顺便说一句,我一直在使用servlet和Tomcat。

编辑:我看到有人说这是前一个问题的副本。我个人认为我的问题是不同的,特别是因为我的重点是HTML而不是JSP - 但不管怎样,很好。如果有人对HTML有任何想法,我会非常感激。

编辑2:或者,我如何动态命名循环中的每个输入框?

<table>
    <c:forEach items="${gear}" var="g">
        <tr>
            <td>${g.category}</td> 
            <td>${g.desc1}</td>
            <td>${g.quant}</td>
            <td><input type="text"></td>
        </tr>
    </c:forEach>
</table>

2 个答案:

答案 0 :(得分:0)

或者,我如何动态命名循环中的每个输入框?

PFB答案

在foreach中添加varStatus,并将输入框命名为如下所示 varStatus =&#34; vStatus&#34; 和输入类型=&#34;文字&#34; ID =&#34;的 $ {pStatus} &#34;

<table>
    <c:forEach items="${gear}" var="g" varStatus="vStatus">
        <tr>
            <td>${g.category}</td> 
            <td>${g.desc1}</td>
            <td>${g.quant}</td>
            <td><input type="text" id="${pStatus}" name="${pStatus}"></td>
        </tr>
    </c:forEach>
</table>

答案 1 :(得分:0)

使用varStatus

<c:forEach items="${gear}" var="g" varStatus='i'>
    ...
    <td><input type="text" name='${i.count}'></td>
    ...
</c:forEach>