有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在HTML中打印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) 个答案

  1. # 1 楼答案

    使用varStatus

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

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

    答案是什么

    在foreach中添加varStatus,并将输入框命名如下 varStatus=“vStatus”和input type=“text” id="${pStatus}

    <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>