Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单一形式的多个记录_Javascript_Html_Ajax - Fatal编程技术网

Javascript 单一形式的多个记录

Javascript 单一形式的多个记录,javascript,html,ajax,Javascript,Html,Ajax,我需要写一个网页,可以采取多种个人信息。客户将填写多份个人信息记录,然后一次性提交 我希望页面一次只显示一条记录的输入字段。填写完一条记录后,客户端可以单击“下一步”按钮转到下一条记录 我正在考虑使用数组输入编写一个表单,并使用javascript隐藏/显示每条记录。但是这个解决方案看起来很混乱,特别是当记录数未知时。 是否可以将每条记录的输入字段嵌套到或表格单元格中,并隐藏/显示此元素?每个记录中的输入字段数量相当大 我不想提交每个记录,因为它们可以包含图像,并且都共享一些共同的隐藏值 我肯定

我需要写一个网页,可以采取多种个人信息。客户将填写多份个人信息记录,然后一次性提交

我希望页面一次只显示一条记录的输入字段。填写完一条记录后,客户端可以单击“下一步”按钮转到下一条记录

我正在考虑使用数组输入编写一个表单,并使用javascript隐藏/显示每条记录。但是这个解决方案看起来很混乱,特别是当记录数未知时。 是否可以将每条记录的输入字段嵌套到或表格单元格中,并隐藏/显示此元素?每个记录中的输入字段数量相当大

我不想提交每个记录,因为它们可以包含图像,并且都共享一些共同的隐藏值

我肯定以前有人遇到过这个问题,有什么好的解决办法吗


非常感谢

考虑到你有这样的html

<form>
<table id="page-1">
  <input type="text" name="name"/>
  <input type="text" name="surname"/>
</table>
<table id="page-2">
     <input type="text" name="age"/>
</table>
<div id="page-3">
     <input type="submit" name="submit"/>
</div>
</form>
<input id="next" type="button" value="Next"/>
    var actualPage = 0;
    $("#next").click(function() {
        $("#page-" + actualPage).hide();
        actualPage++;
        if(!$("#page-" + actualPage).length) {
             // this was last page
             $(this).hide();
             return false;
        }
        $("#page-" + actualPage).show();
    });
有很多方法可以做到这一点,我不知道哪一个取决于你提供的最适合你


这样一来,javascript就不在乎你有多少字段,提交一个表单也能按预期工作。从可用性的角度来看,这不是一个好主意。用户不知道表单的长度,也无法知道总的步骤和剩余的步骤数

但假设这是一个简短的表单,您可以为用户提供当前/总体步骤的某种提示

您应该显示整个表单,并使用字段集标记分隔不同的步骤。
然后使用javascript隐藏除第一个字段集之外的所有字段集,并提供“下一步”按钮
当用户单击“下一步”时,您应该

  • 验证输入
  • 隐藏字段集
  • 显示下一个
  • 更新当前/总步骤的指示器

  • 验证非常重要,因为如果存在多个无效输入,您将无法同时显示所有错误。

    很抱歉,我在帖子中没有明确说明。每个步骤的输入字段都相同。我想收集多人信息。所以步骤的数量就是人数。因此,首先,客户将填写person_1的信息,单击“下一步”,填写person_2的信息,等等。您希望为每个人进行一次提交还是一次提交?我希望进行一次提交,因此一个表单必须包含所有人的信息,并且此表单必须分散到多个页面,每次显示一个页面。如果这有道理的话。谢谢。您将必须使用数组形式的输入,并且您使用的任何服务器端语言都必须能够处理它。除此之外,这个概念还是一样的。将每个人的字段放在自己的字段集中,并根据需要隐藏/显示。