2015-06-24 50 views
0

我正在使用jsp/servlet在java web应用程序中开发项目。如何从javascript向servlet发送值(动态创建文本框)

在此页面中,我正在用java脚本创建一个文本框。

<script> 
var newInput4=document.createElement("input"); 
newInput4.className="form-control "; 
newInput4.name="totalunit"+instance; 
newInput4.placeholder="Unit"; 
newInput4.type="text"; 
</script> 

问题是我该如何从servlet进入数据库?因为这个输入是动态创建的。

newInput4.name="totalunit"+instance; 

此行动态名称更新。

如何发送“名称”到servlet?

+0

通过坚持它在一个HTML表单并像往常一样提交表单?我认为你的问题会在服务器端更多 - 你得到一个请求,然后你怎么知道用哪个名字来获取提交的数据。你必须更多地解释这个'实例'变量来自哪里。 – Gimby

+0

可以请你告诉我如何发送javascript名称到servlet页面 newInput4.name =“totalunit”+ instance; –

回答

0

尝试像下面的方式..

<script> 
    var newInput4=document.createElement("input"); 
    newInput4.className="form-control "; 
    newInput4.name="totalunit1"; 
    newInput4.placeholder="Unit"; 
    newInput4.type="text"; 
    var formId = document.getElementById('formInput'); 
    newInput4.appendChild(formId); 

</script> 

<form method="GET" id="formInput" action="application/servletname"> // 
<input type="submit" name="submit" value="submit"> 
</form> 

//Serveletname.Java 
String id = request.getParameter("totalunit1"); 
+0

什么是formInput? var formId = document.getElementById('formInput'); newInput 4.name是静态totalunit1; 工作原理 –

+0

formInput是表单的ID。当用户点击提交时,我们将使用表单Id(即formInput) – Thulasiram

+0

bro动态地将输入字段附加到表单中。如果您有示例请给我发邮件。 [email protected] –

0

好的!

如果是动态生成的值,那么动态的值设置为Hidden变量

<script> 
    var newInput4=document.createElement("input"); 
    newInput4.className="form-control "; 
    newInput4.name="totalunit"+instance; 
    newInput4.placeholder="Unit"; 
    newInput4.type="text"; 

    document.getElementById("YourHiddenID").value = document.getElementByName("totalunit"+instance).value; 

</script> 



     <html> 
     <input type="hidden" id = "YourHiddenID" > 
     </html> 

在你的Servlet类

 Srtring yourDesiredValue = request.getParameter("YourHiddenID"); 
+0

Srtring yourDesiredValue; –

+0

先生,这是行不通的还有其他选择吗? –

+0

你是什么意思不工作?任何错误或例外,你卡住请解释 – Babel