Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.08.2015, 21:35
Интересующийся
Отправить личное сообщение для myautosaler Посмотреть профиль Найти все сообщения от myautosaler
 
Регистрация: 26.07.2015
Сообщений: 12

Запрет пустого поля и поля с пробелами
Здравствуйте.
Поле поиска не активируется когда оно пустое- это моя цель, и, в принципе, скрипт проверки работает, но если ввести пробелы, то оно начинает по ним искать, а нужно чтобы не искало и при пустом поле, и при поле с пробелами. Как это сделать? Сам скрипт громоздкий, если есть в нем ненужное, то что?
<form action="#" method="post" class="poiskno" onsubmit="this.subm.disabled=true;">
<input type="text" name="user" maxlength="25" class="rfield" />
<input type="submit" class="btn_submit disabled" style="display:none;" value="Отправить данные" />
</form>

(function( $ ){

$(function() {

  $('.poiskno').each(function(){
	var form = $(this),
        btn = form.find('.btn_submit');
	form.find('.rfield').addClass('empty_field');

    // Функция проверки полей формы
    function checkInput(){
      form.find('.rfield').each(function(){
        if($(this).val() !=''){
		$(this).removeClass('empty_field');
        } else {
		$(this).addClass('empty_field');
        }
      });
    }
    // Проверка в режиме реального времени
    setInterval(function(){
      // Запускаем функцию проверки полей на заполненность
	  checkInput();
      // Считаем к-во незаполненных полей
      var sizeEmpty = form.find('.empty_field').size();
      // Вешаем условие-тригер на кнопку отправки формы
      if(sizeEmpty > 0){
        if(btn.hasClass('disabled')){
          return false
        } else {
          btn.addClass('disabled')
        }
      } else {
        btn.removeClass('disabled')
      }
    },500);
    btn.click(function(){
      if($(this).hasClass('disabled')){
        return false}
	else {
        form.submit();
      }
    });
  });
});
})( jQuery );
Ответить с цитированием
  #2 (permalink)  
Старый 12.08.2015, 21:39
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от myautosaler
if($(this).val() !='')
if(/[^\s]/.test($(this).val()))
Ответить с цитированием
  #3 (permalink)  
Старый 12.08.2015, 21:47
Интересующийся
Отправить личное сообщение для myautosaler Посмотреть профиль Найти все сообщения от myautosaler
 
Регистрация: 26.07.2015
Сообщений: 12

Спасибо! Работает. Можно ли сделать чтобы только английские буквы искало, а то если написать ":", то ищет, а это весь поиск сбивает?
Ответить с цитированием
  #4 (permalink)  
Старый 12.08.2015, 22:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от myautosaler
Можно ли сделать чтобы только английские буквы искало
можно но лучше бы вы это сделали сами http://javascript.ru/RegExp
это как бы азы всё что нужно в таблице там
Ответить с цитированием
  #5 (permalink)  
Старый 12.08.2015, 22:33
Интересующийся
Отправить личное сообщение для myautosaler Посмотреть профиль Найти все сообщения от myautosaler
 
Регистрация: 26.07.2015
Сообщений: 12

Вот еще проблема: если кликнуть на поле и быстро нажать на enter, то проверка не успевает сработать и поиск идет по пустому. Как это исправить?
Все уже исправил. рони- еще раз спасибо.

Последний раз редактировалось myautosaler, 12.08.2015 в 22:46.
Ответить с цитированием
  #6 (permalink)  
Старый 13.08.2015, 00:35
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

myautosaler,
может вам придумать алгоритм без setInterval?
Ответить с цитированием
  #7 (permalink)  
Старый 13.08.2015, 01:15
Интересующийся
Отправить личное сообщение для myautosaler Посмотреть профиль Найти все сообщения от myautosaler
 
Регистрация: 26.07.2015
Сообщений: 12

Думаю пока так оставить. Сейчас скрипт работает, все нужные функции исполняет.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определение пустого поля Александр-IV Общие вопросы Javascript 6 05.11.2010 03:08