从多个文本框中获取值

时间:2015-12-14 05:14:16

标签: javascript java jsp

我有多个文本框,如何从中获取价值。

$(function () {
    $("#btnAdd").bind("click", function () {
        var div = $("<div />");
        div.html(GetDynamicTextBox(""));
        $("#TextBoxContainer").append(div);
    });
    $("#btnGet").bind("click", function () {
        var values = "";
        $("input[name=a]").each(function () {
            values += $(this).val() + "\n";
        });
        alert(values);
    });
    $("body").on("click", ".remove", function () {
        $(this).closest("div").remove();
    });
});
function GetDynamicTextBox(value) {
    return '<input name = "a" type="text" value = "' + value + '" />&nbsp;' +
            '<input type="button" value="Remove" class="remove" />'
}
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<form method='POST' action='AddReqPo'>
<input id="btnAdd" type="button" value="Add" />
<br />
<br />
<div id="TextBoxContainer">
    <!--Textboxes will be added here -->
</div>
<br />
<input id="btnGet" type="button" value="Get Values" />
<input type='submit'>
</form>

我想将值保存到servlet。但是当按钮提交发送值时,会出现 java.lang.NullPointerException 错误。这是servlet文件。

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub

    String[] a=request.getParameterValues("a");
        System.out.println(a[0]);
    response.sendRedirect("index.jsp");
}

2 个答案:

答案 0 :(得分:0)

当您提交表单时,您的click处理程序都不起作用(因为您没有阻止使用preventDefault()的默认提交操作),因此当您的表单提交时,servlet中的语句{ {1}}会将String[] a=request.getParameterValues("a");设置为anull会将System.out.println(a[0]);

答案 1 :(得分:0)

代码正常运行。 Servlet无法访问。  请尝试改变。

<form method='POST' action='AddReqPo'>

<form method='POST' action='<%=request.getContextPath()%>/AddReqPo'>