我对JSP文件中动态创建的文本框值有疑问。我的文件包含HTML和Javascript(home.jsp)和JSP(abc.jsp)。
在这个例子中,我只能获取最初创建的文本框的值,我无法从动态创建的文本框中获取值。如何在JSP文件中的运行时从每个动态创建的文本框中获取值?如何获取在运行时创建的文本框总数?
针对home.jsp
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
var addDiv = $('#addinput');
var i = $('#addinput p').size() + 1;
$('#addNew').live('click', function() {
$('<p><input type="text" id="p_new" size="20" name="p_new_' + i +'" value="" placeholder="I am New" /><input type="text" id="p_new1" size="20" name="p_new1_' + i +'" value="" placeholder="I am New" /><a href="#" id="remNew">Remove</a> </p>').appendTo(addDiv);
i++;
document.getElementById('raj').value = i;
return false;
});
$('#remNew').live('click', function() {
if (i > 2) {
$(this).parents('p').remove();
i--;
}
return false;
});
});
</script>
</head>
<body>
<form action="abc.jsp" method="post">
<h2>Dynammically Add Another Input Box</h2>
<div id="addinput">
<p>
<input type="text" id="p_new" size="20" name="p_new" value="" placeholder="Input Value" /><input type="text" id="p_new1" size="20" name="p_new1" value="" placeholder="Input Value" /><a href="#" id="addNew">Add</a>
</p>
</div>
<input type="submit" value="SUBMIT">
</form>
</body>
</html>`
abc.jsp
<%
String name = request.getParameter("p_new");
String name1 = request.getParameter("p_new1");
String name2 = request.getParameter("p_new_[0]");
System.out.println(name);
System.out.println(name1);
System.out.println(name2);
%>
答案 0 :(得分:0)
为输入字段提供相同的名称
然后使用getParameterValues('p_new')
它将返回String数组
<强>更新强>
如果你发送多个输入,那么第一个,第二个,即你的静态输入也用p_new
重命名
然后您就可以使用getParameterValues('p_new')
您的静态名称与动态创建的输入不匹配