Показать сообщение отдельно
  #1 (permalink)  
Старый 19.12.2019, 13:08
Профессор
Отправить личное сообщение для Янковиц Посмотреть профиль Найти все сообщения от Янковиц
 
Регистрация: 17.11.2014
Сообщений: 403

В чём разница?
Добрый день. Есть два похожих кода:
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. В чём причина?
Ответить с цитированием