Проверка Jquery не пустая и является URL в формах

Я использую следующую скрипку для создания формы и проверки того, что оба поля не пусты и что второе поле является допустимым URL. http://jsfiddle.net/nc6NW/366/

<form method=post>
     <input type="text" id='first_name'>
     <input type="url" id='second_name'>
     <input type="submit" value="Submit" id="submit" disabled>
</form>

<script>
$(':text').keyup(function() {
     if($('#first_name').val() != "" && $('#second_name').val() != "") {
           $('#submit').removeAttr('disabled');
}    else {
           $('#submit').attr('disabled', true);   
     }
});

</script>

Однако это работает только при возврате, чтобы изменить первое поле после добавления URL

3 ответа

Решение

:text это проблема.

Обновите ваш JQuery ниже

$("input").keyup(function() {
   if($('#first_name').val() != "" && $('#second_name').val() != "") {
      $('#submit').removeAttr('disabled');
   } else {
      $('#submit').attr('disabled', true);   
   }
});

Вы слушаете ':text' KeyUp. Потому что ваш второй вход 'url' типа, это не вызывает функцию.

Вот почему вы должны вернуться к первому вводу.

События запускаются только по нажатию первого поля ввода. Добавьте подобное событие keyup ко второму полю, и оно будет работать

Другие вопросы по тегам