如何使用Sitecore Webforms为营销人员操纵验证消息的顺序?

时间:2014-03-03 15:00:07

标签: c# asp.net sitecore web-forms-for-marketers

对于我正在使用Sitecore Webforms For Marketers(WFFM)的项目。我创建了一个包含一些自定义文件的webform,例如必填复选框(创建符合manual,第19页)。本手册包含以下注释:“在Web Forms for Marketers模块中,Checkbox字段不支持'required'验证规则”。还有一个特殊领域:验证码字段。所有字段都是必填字段。

现在我的问题是显示验证消息的顺序。如果文本框字段为空,则显示所需的字段消息。填写文本字段后,不选中复选框,将显示复选框错误消息。我希望它们能够一次显示出来。

有谁知道怎么做?

非常感谢。

的Jordy

4 个答案:

答案 0 :(得分:1)

您可以使用JQuery来管理这种思考。如果你愿意,我也可以分享一些代码。

答案 1 :(得分:0)

在黑暗中刺痛,但是:您为验证复选框而创建的自定义代码是否仅使用服务器端验证?

我最后一次遇到类似的问题(首先验证了一组字段,然后又验证了另一组字段)它没有使用WFfM,但事实证明首先验证的字段集是触发的客户端验证脚本。由于它们是在浏览器中运行的,因此它们总是在服务器上运行的任何验证代码之前发生。

您可以通过获取自定义复选框字段来注册客户端验证脚本来解决问题。

根据您的自定义字段的工作方式,您可以通过不同的方式实现此目标。一种模式是创建一个CustomValidator控件,其中包含服务器端和客户端验证逻辑,并将其添加到自定义字段控件中。 MSDN描述了这里的基本过程:

How to: Validate with a Custom Function for ASP.NET Server Controls

另一种模式可能是使用更通用的方法来注册在您的页面呈现时运行的自定义脚本块:

Working with Client-Side Script

该块可能包含挂钩到验证过程的脚本。

答案 2 :(得分:0)

尝试取消选中Sitecore内容树中每个字段的客户端验证复选框。

这将允许您填写所有字段,它只会在您单击提交按钮后进行验证。

答案 3 :(得分:0)

WFFM有一些限制。您可以应用jquery自定义验证,但这不是一个好的解决方案。这可能会有所帮助http://petersondave.wordpress.com/tag/web-forms-for-marketers/