重力形式 WordPress 正在删除错误的输入

问题描述 投票:0回答:1

我正在使用启用了 AJAX 的嵌入式 Gravity forms Elementor 表单。

我注意到,当用户填写表单并提交并出现错误时,所有先前提交的输入都被删除!

如何更改此行为并始终保留已输入的字段?

谢谢!

wordpress gravityforms
1个回答
0
投票

这是我的分析 - 在发生错误时保留重力表单中的用户输入。您可以使用钩子 gform_pre_render 和 gform_validation 这确保表单保留其属性。这是一个简单的方法。为了实现这个目标:

禁用表单的 AJAX:虽然 AJAX 很方便,但有时会导致存储输入值出现问题。尝试暂时禁用它,看看是否可以解决问题。

使用此代码片段:将以下代码添加到文件中。 Functions.php 或您主题的自定义插件:

add_filter('gform_pre_render','save_input_values');

add_filter('gform_validation','store_input_values');

函数 save_input_values($form) { .

foreach ($form['fields'] 例如 &$field) {; if (isset($POST['条目' .

$field['id']])) { $field['defaultValue'] = sanitize_text_field($POST['input' . $field['id']]); - - - - 返回$表格;

此代码将从提交的表单中获取输入值。设置为默认值并确保即使发生错误它仍然可见。

使用该解决方案将使用户工作更加高效。这是因为如果发生数据传输错误,先前输入的数据不会丢失。

© www.soinside.com 2019 - 2024. All rights reserved.