2014-02-28 4 views
0

У меня есть простая форма регистрации, и я решил добавить функцию подтверждения моего пароля, и она, похоже, не проверяет, даже если я нахожу другой пароль!
Есть ли ошибка в моем коде?Подтверждение пароля Javascript

$(document).ready(function(){ 
$('input[name=c_password]').keyup(password_check); 

}); 
function password_check(){ 
var password = $('input[name=password]').val(); 
var c_password = $('input[name=c_password]').val(); 
if(c_password != password || c_password.length < 6){ 
    //alert("test"); 
    $('input[name=c_password]').parent().addClass("has-error has-feedback"); 
}else{ 
    $('input[name=c_password]').parent().removeClass("has-success has-feedback"); 

} 
} 

Спасибо!

Демо: http://jsfiddle.net/52VtD/3217/

+2

Что вы ожидаете произойдет, если пароли не совпадают? – Phil

+0

Я хочу, чтобы граница ввода стала красной – user3350731

+0

Удалил ли вы URL-адрес? :) –

ответ

3

Вы код почти сразу, за исключением того, что вы забыли удалить класс имеет ошибок в случае правильного в c_password.

$('input[name=c_password]').parent().removeClass("has-error") 

http://jsfiddle.net/52VtD/3221/

+1

Спасибо! Я совсем забыл об этом! и я обновляю его сейчас: http://jsfiddle.net/52VtD/3222/ – user3350731

+1

Вам не нужно удалять класс внутри if-then-else, потому что они удаляются в начале функции – marciojc

+0

Вы на самом деле правильно ! – user3350731

1
if(c_password != password || c_password.length < 6){ 
    //alert("test"); 
    $('input[name$=password]').parent().addClass("has-error has-feedback"); 
}else{ 
... 
    (you need put a 'url' on ajax) 
1

Похоже, вы просто опущен код. Из того, что вы предоставили Я предполагаю, что вы хотите что-то вроде этого:

if(c_password != password || c_password.length < 6){ 
    // This is the additional code 
    $('input[name=c_password]').parent().addClass("has-error has-feedback"); 
}else{ 

    jQuery.ajax({ 
     success: function(response){ 
... 
} 
} 

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

EDIT: на самом деле, давайте игнорировать это последнее редактирование:/

+0

Ницца. Ваш код похож на мой, но у меня есть downvote? – Falci

+0

Не от меня, не уверен, почему это произошло. – Phil

+0

Прошу прощения, но я не работал! http://jsfiddle.net/52VtD/3217/ – user3350731

Смежные вопросы