Страницы

Поиск по вопросам

воскресенье, 2 февраля 2020 г.

Когда input заполнен

#javascript #jquery


Добавить класс к label, когда его input заполнен.

 
 


Как это можно реализовать на jquery?
    


Ответы

Ответ 1



$('#test1').change(function(){ tmpval = $(this).val(); if(tmpval == '') { $('#lbl1').removeClass('class1'); } else { $('#lbl1').addClass('class1'); } }); .class1 { background: green; }

Ответ 2



В моем решении также событие срабатывает при вставке текста и без необходимости выходить из фокуса поля, чтобы сработали изменения. $('#test1').on('change paste keyup', function () { var $this = $(this); var input_value = $this.val(); var input_id = $this.attr('id'); if (input_value.length === 0) { $('label[for=' + input_id + ']').removeClass('foo'); } else { $('label[for=' + input_id + ']').addClass('foo'); } }); .foo { background-color: green; }

Ответ 3



На чистом JS: document.getElementById('test1').onkeyup = function() { if(this.value == '') { document.getElementById('lbl1').classList.remove('class1'); }else{ document.getElementById('lbl1').classList.add('class1'); } }; .class1 { background: green; }

Комментариев нет:

Отправить комментарий