Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Запрет определенных слов в input (https://javascript.ru/forum/dom-window/58435-zapret-opredelennykh-slov-v-input.html)

CrazzyBerg 21.09.2015 21:19

Запрет определенных слов в input
 
Здравствуйте, если такой скрипт который будет проверять слово которое ввели в input и если оно в черном списке (файл или через запятую в скрипте), просто очищать строку.

<input type="text" class="form-control" id="txtCommand">

Если кто знает как реализовать, отзовитесь.

Lemme 21.09.2015 21:42

<input type="text">
<script>
	var blackList = ['lorem', 'ipsum', 'dolor', 'sit', 'amet'];

	document.querySelector('input').onkeyup = function() {
	    var expr = new RegExp(blackList.join('|'));
	    if (this.value.search(expr) !== -1) {
	    	this.value = '';
	    }
	}
</script>

CrazzyBerg 21.09.2015 21:52

<input type="text" id="txtCommand">
<script>
	var blackList = ['go', 'nogo'];

	document.getElementById("txtCommand").onkeyup = function() {
	var expr = new RegExp(blackList.join('|'));
	if (this.value.search(expr) !== -1) {
	this.value = '';
	}
}
</script>

CrazzyBerg 21.09.2015 21:55

Вопрос исчерпан, я добавил только отслеживание по id, скрипт предоставил @Lemme, спасибо большое!

is250 10.10.2016 14:40

Работает!
Спасибо!
Но есть одно НО! Кто-нить мож подскажет
Вбиваю с клавиатуры "go" - слово стирается
Копирую "go" и вставляю в input - слово стирается
Отлично!
НО!
Ставлю курсор в инпут, вбиваю одну букву "g", появляется выпадающий список с куками. Выбираю "go" - вставляется без проблем и не стирается

Dilettante_Pro 10.10.2016 14:49

is250,
добавьте еще обработку события onchange

is250 10.10.2016 17:29

Dilettante_Pro,
что-то никак не въеду, как onchange впихнуть

рони 10.10.2016 17:34

is250,
на какое событие у вас код? onkeyup oninput

is250 10.10.2016 17:52

ну вот есть код от CrazzyBerg
Код:

<input type="text" id="txtCommand">
<script>
        var blackList = ['go', 'nogo'];

        document.getElementById("txtCommand").onkeyup = function() {
        var expr = new RegExp(blackList.join('|'));
        if (this.value.search(expr) !== -1) {
        this.value = '';
        }
}
</script>

надо, чтоб при выборе из списка куков слова "go" - слово go стиралось

рони 10.10.2016 17:55

is250,
пост 8 пробовали?


Часовой пояс GMT +3, время: 15:18.