CFWheels-多级形式



我想知道如何在CFWheels中设置多步骤表单。

很明显,我需要在会话等中存储表单数据,但我想知道从轮子的角度来看,最好的方法是"轮子的方式"。

我的控制器中是否只有一个操作可以处理此问题?还是最好把表格的每一部分都分成单独的行动?

请提供有关此方面的建议以及可能的代码示例。

谢谢,Michael

我过去做这件事的方式是使用Ajax调用和jquery模态。

虽然jquery模态并不重要,但我只是喜欢它的美学。简单的div替换也可以。

如果你不能确定用户是否可以使用AJAX,那么它对你不起作用,但你可以使用弹出窗口。

使用Ajax调用多步骤表单的优势在于,可以将表单内容从一个步骤调整到另一个步骤。另一个优点是,您不必将用户数据存储在缓存或会话中。因为每次发送表单时,都可以使用POST或GET。

要实现这一点,最快的设置方法是使用名为RemoteFormHelpers的插件。然后表单的每个步骤都将是一个不同的控制器(或相同的控制器,根据传递的数据使用切换语句)

我认为这是一种非常通用的方法,但你不能制作一个使用文件上传的表单,这并不容易,因为ajax不会让你在没有严重痛苦的情况下完成它。

最新更新