Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.09.2017, 15:57
Аспирант
Отправить личное сообщение для dasha862 Посмотреть профиль Найти все сообщения от dasha862
 
Регистрация: 31.03.2016
Сообщений: 36

Если input заполнен присвоить класс родителю div
Приветствую.

Есть скрипт, который при focus input добавляет класс к div. Подскажите, пожалуйста, как сделать что бы класс подставлялся при focus(как сейчас) и когда input заполнен.
$('.input-control').on('focus blur', function(e){
   $(this).parent()[e.type === 'focus' ? 'addClass' : 'removeClass']('input-focused');
});

<div><input name="email" type="text" class="input-control"></div>  
<div><input name="password" type="password" class="input-control"></div>
Ответить с цитированием
  #2 (permalink)  
Старый 01.09.2017, 16:00
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,202

Сообщение от dasha862
и когда input заполнен
А что значит "input заполнен"?
Ответить с цитированием
  #3 (permalink)  
Старый 01.09.2017, 16:03
Аспирант
Отправить личное сообщение для dasha862 Посмотреть профиль Найти все сообщения от dasha862
 
Регистрация: 31.03.2016
Сообщений: 36

Когда пользователь ввел логин и/или пароль.
Ответить с цитированием
  #4 (permalink)  
Старый 01.09.2017, 16:04
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,202

Сообщение от dasha862
Когда пользователь ввел логин или пароль.
Как понять, что ввод логина или пароля завершен?
Ответить с цитированием
  #5 (permalink)  
Старый 01.09.2017, 16:10
Аспирант
Отправить личное сообщение для dasha862 Посмотреть профиль Найти все сообщения от dasha862
 
Регистрация: 31.03.2016
Сообщений: 36

Моя задача - оформление div и input при focus и когда в поле что-то написано(т.е не пустое), для этого нужен класс.

Последний раз редактировалось dasha862, 01.09.2017 в 16:14.
Ответить с цитированием
  #6 (permalink)  
Старый 01.09.2017, 16:22
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Сообщение от dasha862 Посмотреть сообщение
Моя задача - оформление div и input при focus и когда в поле что-то написано(т.е не пустое), для этого нужен класс.
замените ваш, на этот
$('.input-control').on('focus blur', function(e){
   if(!$(this).val())$(this).parent()[e.type === 'focus' ? 'addClass' : 'removeClass']('input-focused');
});

Последний раз редактировалось j0hnik, 01.09.2017 в 17:14.
Ответить с цитированием
  #7 (permalink)  
Старый 01.09.2017, 16:25
Аспирант
Отправить личное сообщение для dasha862 Посмотреть профиль Найти все сообщения от dasha862
 
Регистрация: 31.03.2016
Сообщений: 36

Это просто отлично!
Большое Спасибо!
Ответить с цитированием
  #8 (permalink)  
Старый 01.09.2017, 16:55
Аспирант
Отправить личное сообщение для dasha862 Посмотреть профиль Найти все сообщения от dasha862
 
Регистрация: 31.03.2016
Сообщений: 36

Только вот ошибка в консоли появилась:
TypeError: "removeClass" is not a function
Ответить с цитированием
  #9 (permalink)  
Старый 01.09.2017, 17:01
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,790

j0hnik, может я что-то не понял, но по-моему (и судя по посту 8) в строке 3 какая-то хрень написана.

$(this).val() не вернет объекта jq, а у string||null нет методов addClass, removeClass.
Ответить с цитированием
  #10 (permalink)  
Старый 01.09.2017, 17:03
Аспирант
Отправить личное сообщение для dasha862 Посмотреть профиль Найти все сообщения от dasha862
 
Регистрация: 31.03.2016
Сообщений: 36

Скрипт работает, но ошибка вылезла:
TypeError: "removeClass" is not a function
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
присвоить класс родителю ufaclub jQuery 1 10.03.2016 06:48
checkbox check если значение input djonA Общие вопросы Javascript 8 14.01.2014 06:44
если hover то класс сверху Артем125 (X)HTML/CSS 15 22.11.2011 21:57
Как сделать: если один инпут заполнен, то в другой вводить нельзя? Fenec Events/DOM/Window 4 12.11.2010 19:32
Как сравнить класс, если их много!? Sc@M Events/DOM/Window 16 29.08.2008 12:47