我有多个文本框,如何从中获取价值。
$(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 + '" /> ' +
'<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");
}
答案 0 :(得分:0)
当您提交表单时,您的click
处理程序都不起作用(因为您没有阻止使用preventDefault()
的默认提交操作),因此当您的表单提交时,servlet中的语句{ {1}}会将String[] a=request.getParameterValues("a");
设置为a
,null
会将System.out.println(a[0]);
答案 1 :(得分:0)
代码正常运行。 Servlet无法访问。 请尝试改变。
<form method='POST' action='AddReqPo'>
到
<form method='POST' action='<%=request.getContextPath()%>/AddReqPo'>