我为 WordPress 安装了 Ninja Forms 和 ACF。我在 Ninja Forms 中有一个隐藏字段,我需要使用 ACF 字段中的值重新填充它。
我尝试了简单的 jQuery,但它不起作用:
$('input[name=nf-field-19]').val('<?php the_field('rsvp_email'); ?>');
如您所知.. 我不是 PHP 或 jQuery 人.. 试图摆弄并找到解决方案。
谢谢!
我为 WordPress 安装了 Ninja Forms 和 ACF。我在 Ninja Forms 中有一个隐藏字段,我需要使用 ACF 字段中的值重新填充它。
我尝试了简单的 jQuery,但它不起作用:
$('input[name=nf-field-19]').val('<?php the_field('rsvp_email'); ?>');
如您所知.. 我不是 PHP 或 jQuery 人.. 试图摆弄并找到解决方案。
谢谢!
出于某种原因,你需要这个从 JS 工作吗?我正在使用ninja_forms_render_default_value
过滤器挂钩来预填充隐藏的表单字段:
/**
* Populate hidden input with ACF values
*/
function nf_hidden_field_values( $value, $field_type, $field_settings ) {
global $post;
$value = ''
if ( $field_settings['key'] == 'hidden_field_1' ) {
$value = get_field('acf_field_1', $post->ID);
}
if ( $field_settings['key'] == 'hidden_field_2' ) {
$value = get_field('acf_field_2', $post->ID);
}
return $value;
}
add_filter( 'ninja_forms_render_default_value', 'nf_hidden_field_values', 10, 3 );
你可以用 Jquery 来做,你只需要触发一个更改事件:
var fieldID = 197;
var newValue = 'compactpro';
jQuery( '#nf-field-' + fieldID ).val( newValue ).trigger( 'change' );
资源: https ://developer.ninjaforms.com/codex/chang-field-values/