感谢信息在联系表格7 WordPress网站上显示两次

时间:2017-09-04 11:33:31

标签: javascript jquery wordpress contact-form-7

需要Javascript代码才能在双击时阻止双重表单提交。 见截图。 https://www.screencast.com/t/3SQ76CMVail

<script> jQuery(document).on('click', '.wpcf7-submit', function(e){
 if( jQuery('.ajax-loader').hasClass('is-active') ) {
 e.preventDefault(); return false; } 
  });
  </script> 

2 个答案:

答案 0 :(得分:3)

第一条消息不应该显示,因为它只是屏幕阅读器的文本,应该被插件的CSS隐藏。也许某种程度上缺少一些CSS。

但是,您可以在Custom&gt;下添加它。定制器中的CSS。

.screen-reader-response {
  display: none;
}

对于第二件事,您可以参考此link以防止CF7重复提交。

希望这对你有所帮助。感谢。

答案 1 :(得分:0)

如果用户在单击表单的“发送”或“提交”按钮后没有立即看到确认消息,则通常会生成多个提交。有时,问题与缓慢提交表单有关,而缓慢表单提交更多是与服务器相关的问题,不受网站开发人员的控制。对于某些站点,可以使用JavaScript禁用“发送”或“提交”按钮,但在使用带有WordPress的插件时,这不是一个选项。除非没有其他替代方案,否则不应修改插件和WordPress核心代码,Contact Form 7消息严重依赖于JQuery。

解决方案1:

在每个Contact Form 7编辑器页面的“附加设置”部分中添加了一小段代码。对于每个创建的表单,您都可以在编辑器页面底部附近找到此部分。

on_sent_ok:&#34; location =&#39; http://www.mywebsite.com/request-submitted/&#39;;&#34;

创建包含确认消息的页面。提交表单后,用户将被重定向到此页面。

解决方案2:

有一个插件可以限制cf7多次点击(https://wordpress.org/plugins/stop-cf7-multiclick/),请参阅常见问题部分以了解我如何使用该插件?