jsp中用js动态生成的数据不能用form提交吗

weizhen_ 2012-12-26 10:07:02
js里面的大致代码是这样的,用document动态的在一个form里面添加input框。


var TemO=document.getElementById("add");
var newInput = document.createElement("input");
newInput.id="input"+(elementCount);
newInput.name="textfield";
TemO.appendChild(newInput);



之后提交到后台去了,但是获取不到使用js动态生成的值。

我个人理解是因为jsp代码的页面在运行tomcat的时候已经编译好了放在work目录里面了。
而使用js是生成的input只是在html里面,没办法提交上去。
所以我认为可以用js提交。但是具体的不知道怎么弄, 因为我的页面前面还有不是用js动态
生成的数据也要提交的。
...全文
267 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
笑莫问 2012-12-27
  • 打赏
  • 举报
回复
forgetsam 2012-12-27
  • 打赏
  • 举报
回复
没什么可聊的,你把基础弄扎实了就不会有这些问题了。 你放到一个div里有什么用?浏览器提交是以Form为单位的。 和你的JSP有毛关系?你提交一个request回去靠的是浏览器,jsp就是个绘制页面返回流的java类而已。
Intboy 2012-12-27
  • 打赏
  • 举报
回复
weizhen_ 2012-12-26
  • 打赏
  • 举报
回复
引用 2 楼 datiexiong 的回复:
JavaScript code?123456789101112131415161718192021222324252627<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http:……
呵呵 谢谢你哈。 我的是form写的有点问题呵呵,js是没错。以后多多交流哈。
weizhen_ 2012-12-26
  • 打赏
  • 举报
回复
引用 1 楼 lin5ting 的回复:
好吧,我查了点资料,也看了一些人类似我这个问题的,最终发现是可以传值的。呵呵。我看了一个人的http://www.6a8a.com/2011/JavaScript_0521/1946.html受到启发,应该是我页面的什么地方写错了,于是我仔细的检查了页面。发现了form的</form>和我前面提交的不匹配,因为选中一个的时候另外一个并不会变色。之后把form放在了最外面的……
呵呵 谢谢你哈。 我的是form写的有点问题呵呵,js是没错。以后多多交流哈。
爱若如梦 2012-12-26
  • 打赏
  • 举报
回复


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312">
<title></title>
<script type="text/javascript" language="javascript">
function test()
{
var elementCount=1;
var Tem=document.getElementById("add");
var newInput = document.createElement("input");
newInput.id="input"+(elementCount);
newInput.name="textfield";
Tem.appendChild(newInput);
}
</script>
</head>
<body onload ="test();">
<form id ="add" action="localhost:8080/client/transferConfirm.do" method="post">
<input type="hidden" name="flag" value="querytransferdetail"/>
<input type="submit" name="submit" value="提交"/>

</form>


</body>
</html>


我还特意去试了试。
能传
weizhen_ 2012-12-26
  • 打赏
  • 举报
回复
好吧,我查了点资料,也看了一些人类似我这个问题的,最终发现是可以传值的。呵呵。我看了一个人的http://www.6a8a.com/2011/JavaScript_0521/1946.html受到启发,应该是我页面的什么地方写错了,于是我仔细的检查了页面。发现了form的</form>和我前面提交的不匹配,因为选中一个的时候另外一个并不会变色。之后把form放在了最外面的div外面,在点就会匹配了。之后就可以传数据了。 问题是这样解决的,但是还是有点疑惑,为什么我本来不是动态生成的那个input可以传值,而动态生成的确不可以了,我只是改变了form的位置。代码是没错的。 是作用域的问题还是什么啊?可是我动态生成的和之前写在页面的input放在一个div里面的。。。 接下来大家随意聊聊。 到时候谁说的好就给分了呵呵

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧