Вход: текстовый jquery

0
$('.search').click(function () {
    if ($('input:text').val().length == 0 ) { 
        $(".fill-out").fadeIn("1400")
    }
});

$('.search').click(function () {
    if ($('input:text').val().length >= 1) {
        window.location.reload(true);
    }
});

Поэтому у меня есть некоторый jquery, который должен показывать скрытый класс под названием.fill-out, когда нет ничего в 1 или более текстовых вводах, когда вы нажимаете кнопку отправки. Я также пытаюсь сказать, когда длина текста в текстовых вводах больше или равна 1, а затем обновлять страницу после нажатия кнопки. Вторая часть работает неправильно. Это делает так, если любые текстовые входы имеют длину текста больше или равную 1, тогда она обновляет страницу. Я хочу, чтобы первый бит кода по-прежнему создавал часть.fill-out. Может ли кто-нибудь помочь?

  • 0
    попробуйте $('input[type="text"]').val().trim() == '') - вы, вероятно, также должны указать, какое текстовое поле вы ищете, и если вам нужно проверить более одного Вы могли бы использовать плагин, как JQuery валидировать
Теги:

1 ответ

1
Лучший ответ

Вы проверяете только, имеет ли в первом элементе input:text элемент не пустое значение... вам нужно выполнить итерацию по списку полей ввода и проверить каждую из них, чтобы узнать, пусто ли это значение или нет.

Вы должны использовать

$('.search').click(function () {
    var valid = $('input:text').filter(function () {
        return $.trim(this.value).length == 0
    }).length == 0
    if (valid) {
        window.location.reload(true);
    } else {
        $(".fill-out").fadeIn("1400")
    }
});

Демо: скрипка

  • 0
    По какой-то причине на моей странице он показывает текст .fill-out, когда все входные данные: тексты содержат текст, но он работает на вашей скрипке. Есть идеи?
  • 0
    Я также использую Visual Studio Express 2012, чтобы сделать это.

Ещё вопросы

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