Добрый день. Есть два похожих кода:
1
$(document).on('change keyup input click oninput', 'input', function() {
let pattern = $(this).data( 'pattern' );
if ( pattern !== '' && pattern !== 'undefined' ) {
this.value = this.value.replace( pattern, '' );
}
});
2
$(document).on('change keyup input click oninput', 'input', function() {
let pattern = $(this).data( 'pattern' );
if ( pattern !== '' && pattern !== 'undefined' ) {
this.value = this.value.replace( /[^а-яА-Яa-zA-Z\s]/g, '' );
}
});
Во втором случае выполняется валидация, а в первом нет. В обоих случаях pattern в console.log показывает /[^а-яА-Яa-zA-Z\s]/g. В чём причина?