2014-09-22 9 views
0

Я должен попробовать еще раз здесь с этой проблемой. Как я мог заметить, решить мою проблему не так просто. У меня есть текстовое поле ввода, в котором некоторые слова из указанного списка не могут использоваться, но только когда каждое слово из списка вводится как единое целое, а не с другими словами.jquery блокирует слова из списка, если используется как одно слово, а не когда с другими

Так я определить «вар»

var bannedWords = ["black", "white", "red", "blue"], 

Теперь, когда кто-то ввести любое слово из списка выше, должны увидеть сообщение об ошибке. Но более важным является тот случай, когда он вводит любое слово из списка выше с любым другим, и тогда это должно быть принято.

Короче говоря, когда кто-то введите:


"черный" - ошибка,

"это черный" - ПРИНИМАЮТСЯ,

"белый крут" - ПРИНИМАЮТСЯ,

«это красный цвет» - ПРИНЯТО


Очень важно то, что мне нужно просто добавить любое другое слово в этот список, чтобы все могло действовать.

Я пытаюсь найти помощь in here, но я думаю, что никто меня не понимает или не смог помочь. Кто-нибудь, кто может дать мне совет?

ответ

3

Может быть оптимизирован .. но: http://jsfiddle.net/1819tb2m/

var badWords = ["black", "white", "red", "blue"]; 

$("input").keyup(function(){ 
    for(var i = 0; i < badWords.length; i++) 
    { 
     if(this.value == badWords[i]) 
     { 
      $("p").text("BAD WORD!"); 
      return; 
     }   
    } 
    $("p").text("accepted " + this.value); 
}) 
+1

Да, забыл сохранить;) Ссылка обновляется –

+2

+1: Nice простого решения ... –

+0

Вы шутите? : D Ты сумасшедший парень :) Это решение РОКИ! О человек, как я тебя люблю! : P Я до сих пор до глупого :) ПРИНИМАЕМ! – X9DESIGN