我有一个表单,当我按下提交按钮时,我会立即调用blockUI jQuery插件,这反过来导致一个带有“正在加载...”动画的div在其中播放。
问题是按下提交按钮会触发此加载动画,如果表单有任何验证问题,如果验证没有通过,表单实际上不会提交,但加载div仍会显示。
所以,我认为只有在表单通过验证后才需要触发blockUI。
我正在使用名为Ninja Forms的Wordpress插件来提交和处理表单。 Ninja Forms的文档有我认为我需要使用的这个动作:http://ninjaforms.com/documentation/developer-api/actions/ninja_forms_process/
我想我可以使用此ACTION仅在验证通过后运行blockUI。
所以我在下面有这个代码。但这似乎并没有起作用。即使验证通过,blockUI现在也不会运行。那么也许我没有触发jQuery正确运行?
<?php
add_action( 'init', 'ninja_forms_register_example' );
function ninja_forms_register_example(){
add_action( 'ninja_forms_process', 'ninja_forms_example' );
}
function ninja_forms_example(){
global $ninja_forms_processing;
echo "<script> $(document).ajaxStart(function(){ $.blockUI({ message: $('#rLo') }); }); </script> ";
}
?>
答案 0 :(得分:0)
试试这个:
<?php
add_action( 'init', 'ninja_forms_register_example' );
function ninja_forms_register_example(){
add_action( 'ninja_forms_process', 'ninja_forms_example' );
}
function ninja_forms_example(){
global $ninja_forms_processing;
echo '<script> $(document).ajaxStart(function(){ $.blockUI({ message: $(\'#rLo\') }); }); </script> ';
}
?>
您需要使用单引号而不是双引号。