0

我有一个很长的表格,我想分成多页。

我正在评估两个演示选项:

  1. 使用FormWizard在多个页面上显示表单
  2. 将表单呈现在CSS3 滑块等滑块上。

滑块实际上只有一页长,使用 CSS3 给人以幻灯片的印象。它使所有内容区域彼此相邻浮动,隐藏溢出,width如果我们有 5 张幻灯片,则将页面设置为 500%,并将左边距移动 -100% 以显示下一张幻灯片。所以它都是一页,但似乎表单正在滑动页面上显示。

对我来说,滑块方法的优点是只有一个表单,用户在幻灯片结束时只提交一次表单,因此可以来回进行更改。(这将是一种常见情况)。

与在每个页面之后都有迷你表单FormWizard并提交它们相比。对我来说,FormWizards这似乎很复杂,特别是如果用户想要更改任何以前的页面响应。我还需要FileField在我的表单页面上,似乎只在最后一页上FormWizard接受。FileField

但是,我还没有看到很多人使用这种滑动表单(CSS3 或 JScript 之一)方法。因此,作为一个新手,我想知道这样做是否有一些明显的陷阱?

4

1 回答 1

1

我只能写FormWizard我以前用过的。根据 Django 文档的“处理文件”部分,可以在

https://docs.djangoproject.com/en/dev/ref/contrib/formtools/form-wizard/

aFileField可用于FormWizard实施的任何步骤。我发现使用FormWizardDjango 真正有用的是,它为您提供了Forms. 这意味着您可以轻松地创建和操作表单、在每个步骤中验证字段等。我不知道 CSS3 滑块如何完成验证,但我想验证应该在客户端进行。

此外,DjangoFormWizard使用 Cookie 存储后端或 Session 存储后端来存储信息,这使得步骤之间的导航和修改以前存储的数据非常简单。

我希望我对你的决定有所帮助!FormWizard当然可以在我上面提供的链接中的 Django 文档中找到更多信息。

于 2012-07-03T08:49:56.367 回答