2016-02-29 2 views
0

Я пытаюсь создать форму входа, которая проверяет силу пароля и изменяет свойства панели. Прямо сейчас я пытаюсь заставить его просто проверить, содержит ли пароль ввод одной буквы.Поиск ввода на keyUp

HTML:

<input type="password" id="pass" name="password" placeholder="Password" required><br><br> 
<div id="strength"> 
    <div id="bar"></div> 
</div> 

JS:

$("#pass").keyUp(function(){ 
    var pass = $("#pass"); 
    if(pass.val().indexOf("a") >= 0){ 
     $("#bar").css("width","70%"); 
    } 
}); 

Когда я вхожу 'а' в поле ввода не меняет CSS, хотя. Может кто-нибудь объяснить, как это сделать? Заранее спасибо

ответ

-1

попробовать это, я надеюсь, что ваш ответ

$("#pass").on("keyup", function(){ 
    var $pass = $("#pass"); 
    if($pass.val().indexOf("a") != 0){ 
     document.getElementById('bar').style.width = 'y0%'; 
    } 
}); 
+0

Как это отличается от того, что сделал OP? Также indexOf («a»)! = -1 не 0. – noahnu

+0

@noahnu Извините, я изменил ответ. Посмотрите на это – Shayan

+0

Я не знаю, но это сработало. Я просто заменил «! =» На «> =», поскольку я хотел, чтобы он выполнялся, когда это не так, когда это не так. –

1

У вас есть верхний регистр U в вызове функции к keyUp. Он должен быть строчным.

$("#pass").keyup(function(){ 
 
    var pass = $("#pass"); 
 
    if(pass.val().indexOf("a") >= 0){ 
 
     $("#bar").css("width","70%"); 
 
    } 
 
});
#strength {width: 100%;} 
 
#bar {height: 1em; background: red;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="password" id="pass" name="password" placeholder="Password" required><br><br> 
 
<div id="strength"> 
 
    <div id="bar"></div> 
 
</div>

+0

Ох ... ничего себе .... Моя вина. Большое спасибо –

+0

Как бы я сделал то же самое, но для ряда входных данных? Например, все символы из a-z и A-Z? –

+0

Используйте [регулярное выражение] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions). См. Ответ от @itsgoingdown для примера http://stackoverflow.com/a/35708433/1028949 – Quantastical

2

Просто смотреть ваш случай, вот docs Ваш оригинальный код "KeyUp", который выходит из строя, здесь я изменил его на "KeyUp"

$("#pass").keyup(function(){ 
    var pass = $("#pass"); 
    if(pass.val().indexOf("a") >= 0){ 
     $("#bar").css("width","70%"); 
    } 
}); 

Вот fiddle link.

0
$("#pass").on("keyup", function(){ 
     var $pass = $("#pass"); 
     if($pass.val().indexOf("a") > -1){ 
     $("bar").css("width","70%"); 
     } 
    }); 
Смежные вопросы