Как динамически обновить мой промежуток с сообщением об ошибке или сообщением об успехе?

0

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

мой html:

 Full name:
<input type="text" id="box1" />&nbsp;<span id="msg_out1"></span>

 password:
<input type="password" id="box2" />&nbsp;<span id="msg_out2"></span> 

Мой jQuery - это, по крайней мере, это то, что я пробовал:

jQuery( "#box1" ).click(function(){
    if (jQuery( "#box1" ).val() !="") {
        jQuery( "#msg_out1" ).html('&#10003; Great Name!').css('color','green').css('font-   size','18px').css('margin-left','40px');
    } else 
        jQuery( "#msg_out1" ).html('&#10008; Please Enter Your Name').css('color','red').css('font-size','18px').css('margin-left','40px');
});

Пример: твиттер

  • 0
    Может быть, вы также хотите очистить сообщение, пока пользователь печатает. Для этого вы бы использовали keydown
Теги:

2 ответа

0

Я думаю, что лучший способ сделать это - использовать событие "change" на входе.

Так будет делать что-то вроде:

$('.my-input').on('change', function(event) {
    /* validate if blank or something*/
});

И эта функция будет вызвана только тогда, когда этот вход теряет фокус.

  • 1
    это делает то же самое, что и .blur
  • 0
    @popnoodles, это просто ошибка, напечатанная здесь, мой исходный код имеет это
Показать ещё 1 комментарий
0

Я решил проблему.

Правильная функция:

jQuery( "#box2" ).on('keyup',function(event){
    if (jQuery( "#box2" ).val() !="") {
    jQuery( "#msg_out2" ).html('&#10003; Great Name!').css('color','green').css('font-size','15px').css('margin-left','40px');
 }else 
    jQuery( "#msg_out2" ).html('&#10008; Please Enter Your Name').css('color','red').css('font-size','15px').css('margin-left','40px');

});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню