制作表单时,我们总会面对这样的提问:“能不能在我填写的时候验证我写的对不对?”“能不能在我选择否的时候这部分内容不显示?”。

可以吗?当然可以!在InfoPath中,我们可以快速实现这些要求,只要了解如何正确应用规则。

在InfoPath 2010 的Ribbon工具栏“开始”标签中有个“管理规则”按钮:

clip_p_w_picpath001[1]

点击按钮,在界面右侧即会出现“规则”任务窗格:

clip_p_w_picpath002[1]

选择已添加到视图中的任何一个控件:

p_w_picpath

点击“新建”即可看到,我们可以在控件上添加三种规则:验证、格式、操作。

【验证】

验证对应着InfoPath 2007中的“数据验证”,指的是在填写数据时对内容进行验证。比如手机号码应当必须为11位数字,如果不符合则应认定为无效数据,同时应该提醒用户检查填写。

首先我们需要先选中绑定“手机号码”的文本框,然后在右侧的任务窗格中,点击新建下拉框中的“验证”:

p_w_picpath 

在详细信息中输入“验证手机号码必须为11位数字”:

p_w_picpath

点击“条件”下方的“无”:

p_w_picpath

在弹出的对话框中我们可以指定判定数据无效的条件,系统内置了多种比较符,很方便,本例中我们选择“不匹配模式”:

clip_p_w_picpath001[3]

在右侧的下拉框中选择“选择模式”:

  

模式是使用正则表达式来规定的。在数据项模式中可以看到,内置了“URL”“电子邮件地址”和“邮编”,也就是说,如果我们需要验证某个字段是否符合这三个格式之一,就可以直接选择使用了。这里我们需要验证的格式是“11位数字”,不在内置的格式之中,所以选择“自定义模式”:

clip_p_w_picpath003

在下方的“插入特殊字符”的下拉选项框中,我们可以选择插入需要的字符,也可以直接在文本框中输入:

 

这里我们指定的模式是11位数字,点击确定。

clip_p_w_picpath005

回到“规则”任务窗格,在“屏幕提示”中填写提示文字。

在屏幕提示下方还有“显示更多选项”,点开可以看到有关消息对话框的设置:

clip_p_w_picpath001[5]

        默认情况下,当数据填写的格式不对时,仅会显示出屏幕提示,还可以选择同时“显示屏幕提示和对话框消息”,不过注意,只有在客户端打开表单时才可能弹出对话框,浏览器是不支持的:

clip_p_w_picpath002[5]

预览的效果如下图所示:

 

如果选了弹出对话框,且在客户端打开,效果是这样的:

clip_p_w_picpath004[4]