我正在创建一个Web应用程序,我将一个来自servlet的Int值传递给下一个jsp页面,如下所示:
request.setAttribute("n",n);
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/sharingfilesselection.jsp");
dispatcher.forward(request, response);
现在在下一页,即sharingfilesselection.jsp我希望动态创建n个文本框,每个文本框都有不同的id,因为我需要将这些文本框的值存储在我的数据库中。
N在下一个jsp页面上获得:
Object N=request.getAttribute("n");
如何使用javascript完成此操作?请帮助
答案 0 :(得分:3)
您可以使用JSTL执行此操作:
<c:forEach var="i" begin="1" end="${n}">
Input ${i}: <input type="text" name="txtDynamic_${i}" id="txtDynamic_${i}" />
<br />
</c:forEach>
答案 1 :(得分:1)
试试吧 的 .javascript 强>
<%String n=(String)request.getAttribute("n");%>
var n=<%=n%>;
for(var i=0;i<n;i++{
$(".exac").append("<input type="text" id='textbox"+i+"'></input>");
}
}
<强> html的强>
<div class="exac">
</div>
答案 2 :(得分:1)
HTML
<div id="container"><input type="button" onclick="createTextBox(5)" value="create textbox">
JS
function createTextBox(n) {
for (var i = 0; i < n; i++) {
var textBox = document.createElement("input");
textBox.setAttribute("id", "text_" + i);
document.getElementById("container").appendChild(textBox);
}}