@tebekonez

Как выполнить вариант кода, в зависимости от заполненности input?

Как сделать так чтобы js проверял есть ли текст в input? Если в input есть текст то выполняется "Вариант 2" если нет то "Вариант 1"?
HTML
<div class="src">
    <input type="text" class="search_link " placeholder="search">
    <a href="#" class="search_a"><img src="img/search_5288.png" alt="search_5288"></a>
 </div>


JS
let search_link = document.querySelector('.search_link');
let search_a = document.querySelector('.search_a');


Вариант 1
search_a.addEventListener('click', function(){
  search_link.classList.toggle('search_link_active');
})


Вариант 2
search_a.addEventListener('click', function(){
  search_link.classList.add('search_link_active');
})
  • Вопрос задан
  • 99 просмотров
Решения вопроса 2
@aedam
let search_link = document.querySelector('.search_link');
let search_a = document.querySelector('.search_a');

search_a.addEventListener('click', function() {
  // вариант 1
  if (!search_link.value) {
    search_link.classList.toggle('search_link_active');
    return;
  }
  
   // вариант 2
   search_link.classList.add('search_link_active');
})
Ответ написан
Комментировать
sergiks
@sergiks Куратор тега JavaScript
♬♬
Различие только в методе add или toggle?
const search_input = document.querySelector('input.search_link');
const search_btn = document.querySelector('a.search_a');

search_btn.addEventListener('click', function() {
  const hasValue = search_input.value.length > 0;
  const methodName = hasValue ? "add" : "toggle";
  search_input.classList[methodName]('search_link_active');
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы