这两天开发过程中,遇到一个很诡异的问题。
JSP提交的时候那些固定写在form中的input的数据一个没少,缺少的是由JS动态写入form中的input。(但是IE可以提交成功,火狐,chrome都无法提交)
难道是为了安全性,JS动态写入的input不让提交?查了很多资料都没有这种说法
难道是没有写name属性?检查了也有。
难道是我这批input都是同一个name不行?我用JS只写一个input控件到form,结果还是一样取不到。事实上是允许name相同的
难道标签有误?从头到尾仔细看了一遍,没有发现异常。
如下图,所有动态增加的数据都也是被包裹在form表单中,为什么会提交不了呢?
突然发现 ,在firedebug看源代码时,如下图,form标签是灰色的,也就是隐藏了,而且还是闭合的,也就是说,我所有动态添加的数据都是在form表单之外的,也就是无法提交了。
于是,我将form把table完全包裹,再试了一下
form标签正常了
数据也能正常提交了。。
好心塞,这么个东西,坑了我两天!