在我的jsp文件中,我通过数据库动态生成多个输入标记。我想知道每个人的价值观。我试过用Javascript做,但根据本网站的一些答案,这是不可能的。 例如:
<input type="number" id="age" class="v">
<input type="text" id="name class="v">
...
在jsp方面,我想得到:
"age" => 18
"name" => "Joe"
关于如何实现这一目标的任何想法?
修改
如果您想知道,我的Javascript非常简单,只需执行以下操作即可获得所需的所有值:
var chars = document.getElementsByClassName("v");
编辑2 我的(简化的)JSP看起来像这样:
<%= session.getAttribute("chars")%>
<form action="hello" method="POST">
<c:forEach items="${chars}" var="ch">
<input type="number" id="${ch}" class="v">
</c:forEach>
<input type="submit">
</form>
“chars”是通过调用数据库创建的数组,此数组是动态显示和创建的。
所以我想要做的就是将所有这些值(如"age" => 18
)传递给另一个 hello servlet,这样我就可以处理这些信息了。例如,如果输入的值是这样的:
// ID值
“年龄”=&gt; 18
“name”=&gt; “乔”
在 hello 上我应该可以访问它。
答案 0 :(得分:1)
使用纯JavaScript,您可以使用querySelector
获取字段值,这允许您从具有相同类标识符的多个元素中检索属性
document.querySelector('.v').value;
然后您可以通过js访问这两个字段值。要使用jsp读取这些值,您需要将JavaScript包含在同一个文件中。你可以这样做:
JSP:
您需要将HTML Name="myFieldName"
添加到输入字段。
<%= request.getParameter("myFieldName") %>
答案 1 :(得分:0)
如果您在表单中,则可以使用POST方法提交表单内不同输入的数据。
以下是StackOverlow上的一篇文章,可能有助于您获得所需的数据: