& validate =`workemail:blank`表现不正常

时间:2017-09-11 20:22:59

标签: forms content-management-system modx modx-revolution formit

我尝试过使用此示例来阻止我的网页上的垃圾邮件,但是当我测试它并将文本放在字段中时,我的提交按钮仍在发送表单。我为我的网站使用formit。

我们的想法是创建一个隐藏字段,如果spambot在隐藏字段中插入了某些内容,则不会发送任何电子邮件。

有问题的例子

https://docs.modx.com/extras/revo/formit/formit.tutorials-and-examples/formit.using-a-blank-nospam-field

代码片段

<input type="hidden" name="workemail" value="" />
[[!FormIt? &validate=`workemail:blank`]]

我正在使用那里的确切代码,下面的代码是我的字段 - 我确保字段在标记内。

<input type="hidden" name="workemail" value="[[!+fi.workemail]]" />

我的伪造代码看起来像

[[!Formit?
        &hooks=`spam,FormItSaveForm,email,redirect`
        &redirectTo=`122`
        &formName=`Contact Form`
        &formFields=`fname,title,company,email,options,subject,message`
        &emailTpl=`fi-contact_email`
        &emailSubject=`[[*contact_email_subject]]`
        &emailTo=`[[*contact_email_to_address]],candelari@hgp.com`
        &emailFrom=`[[*contact_email_from_address]]`
        &emailFromName=`[[*contact_email_from_name]]`
        &emailReplyTo=`[[+email]]`
        &submitVar=`contactform`
        &validate=`workemail:blank,
        fname:required,
        email:email:required,
        message:stripTags,
        username:blank`
      ]]

感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:0)

也许以下内容可以解决:

0)首先,更新MODX和FormIt extra并重试。

1)如果问题仍然存在,请尝试从[[!+fi.workemail]]属性中删除value

<input type="hidden" name="workemail" value="" />

2)如果上一步没有帮助,请在表单中添加另一个字段。所以,它应该是:

<input type="hidden" name="workemail" value="" />
<input type="hidden" name="nospam:blank" value="" />

3)同时尝试从标记和formit调用中删除workemail内容,而是添加

<input type="hidden" name="nospam:blank" value="[[+fi.nospam]]" />

或者,请查看其他选项,例如ReCaptchaV2

相关问题