Кемеровские программисты php общаются здесь
Anonymous
Формы ниндзя удаляются при проверке размытия
Сообщение
Anonymous » 06 янв 2025, 22:55
Я пытаюсь заставить мои формы выполнять проверку только при отправке (что уже происходит по умолчанию), я сделал перехватчик, чтобы отправить скрипт для удаления события размытия из списка, чтобы форма могла выполнять проверку по умолчанию, но это просто не удаляет их.
Я использовал страницы разработки из форм ниндзя и документов марионеток.
https://developer.ninjaforms.com/codex/ ... alidation/
https://developer.ninjaforms.com/codex/fields/
https://marionettejs.com/docs/master/ba ... radio.html
большая часть этого работает, так как я могу видеть идентификаторы полей, когда он проверяет на консоли
мой хук:
Код: Выделить всё
< ? php
namespace App\ Hooks;
use function add_action;
class NJFormsDisableOnChangeValidation extends Hook {
public $priority = 9;
protected $type = 'filter';
protected $actions = [
'wp_enqueue_scripts'
];
public
function __invoke() {
add_action('wp_footer', function() {
?
>
<
script type = "text/javascript" >
jQuery(document).ready(function($) {
console.log('Script loaded correctly');
var ValidationController = Marionette.Object.extend({
initialize: function() {
console.log('ValidationController init');
var fieldChannel = Backbone.Radio.channel('fields');
var submitChannel = Backbone.Radio.channel('submit');
// Deactivate validations on change and blur
fieldChannel.off('change:modelValue');
fieldChannel.off('blur');
// Maintain validation only in submit
this.listenTo(submitChannel, 'validate:field', this.validate);
console.log('Modified validation events: change and blur disabled..');
},
validate: function(model) {
// Check the field type.
if (1 != model.get_setting('required')) return;
console.log('Validation only in submit executed for the field with ID:', model.get('id'));
}
});
new ValidationController();
}); <
/script> <
? php
});
}
}
Подробнее здесь:
https://stackoverflow.com/questions/793 ... validation
1736193301
Anonymous
Я пытаюсь заставить мои формы выполнять проверку только при отправке (что уже происходит по умолчанию), я сделал перехватчик, чтобы отправить скрипт для удаления события размытия из списка, чтобы форма могла выполнять проверку по умолчанию, но это просто не удаляет их. Я использовал страницы разработки из форм ниндзя и документов марионеток. https://developer.ninjaforms.com/codex/client-side-field-validation/ https://developer.ninjaforms.com/codex/fields/ https://marionettejs.com/docs/master/backbone.radio.html большая часть этого работает, так как я могу видеть идентификаторы полей, когда он проверяет на консоли мой хук: [code]< ? php namespace App\ Hooks; use function add_action; class NJFormsDisableOnChangeValidation extends Hook { public $priority = 9; protected $type = 'filter'; protected $actions = [ 'wp_enqueue_scripts' ]; public function __invoke() { add_action('wp_footer', function() { ? > < script type = "text/javascript" > jQuery(document).ready(function($) { console.log('Script loaded correctly'); var ValidationController = Marionette.Object.extend({ initialize: function() { console.log('ValidationController init'); var fieldChannel = Backbone.Radio.channel('fields'); var submitChannel = Backbone.Radio.channel('submit'); // Deactivate validations on change and blur fieldChannel.off('change:modelValue'); fieldChannel.off('blur'); // Maintain validation only in submit this.listenTo(submitChannel, 'validate:field', this.validate); console.log('Modified validation events: change and blur disabled..'); }, validate: function(model) { // Check the field type. if (1 != model.get_setting('required')) return; console.log('Validation only in submit executed for the field with ID:', model.get('id')); } }); new ValidationController(); }); < /script> < ? php }); } }[/code] Подробнее здесь: [url]https://stackoverflow.com/questions/79334186/ninja-forms-remove-on-blur-validation[/url]