如何将多个输入传递给jsp

时间:2017-01-24 18:04:34

标签: javascript java jsp

在我的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 上我应该可以访问它。

2 个答案:

答案 0 :(得分:1)

使用纯JavaScript,您可以使用querySelector获取字段值,这允许您从具有相同类标识符的多个元素中检索属性

document.querySelector('.v').value;

然后您可以通过js访问这两个字段值。要使用jsp读取这些值,您需要将JavaScript包含在同一个文件中。你可以这样做:

JSP:

您需要将HTML Name="myFieldName"添加到输入字段。

<%= request.getParameter("myFieldName") %>

答案 1 :(得分:0)

如果您在表单中,则可以使用POST方法提交表单内不同输入的数据。

以下是StackOverlow上的一篇文章,可能有助于您获得所需的数据:

How can I get form data with JavaScript/jQuery?