我有一个很长的表格,分为6个步骤。加载表单后,将加载所有步骤,但是只有第一步可见。其余的具有CSS,display:none因此它们是隐藏的。完成一个步骤并使用Javascript进行验证后,当前步骤将设置为display:none,新步骤将设置为display:block。在最后一步,用户提交表单。但是,正如预期的那样,仅display:block提交页面上元素中的字段。元素中所有完成的字段都将display:none被忽略。
display:none
display:block
有没有一种方法可以提交display:none元素内的字段?
如果没有,还有其他方法可以达到相同的效果吗?
将它们设置为visibility:hidden和position:absolute。字段不会与一起发送到服务器display:none,而是与一起发送到服务器visibility:hidden。通过将“位置”切换为“绝对”,您应该获得相同的视觉效果。
visibility:hidden
position:absolute
更新 在任何当前浏览器中(从2015年11月开始),这似乎不再是问题。即使显示设置为“无”,也会提交字段。但是,“禁用”的字段将继续不提交。