Выполнить поиск по тексту ссылки при нажатии на неё
На сайте есть большое количество ссылок и форма поиска.
Как сделать, чтобы при нажатии на ссылку, текст внутри неё вставлялся в форму поиска и выполнялся поиск?
<form>
<input type="search" class="searher-inp">
<input type="submit" class="submiter-btn">
</form>
<a class="link-to-search">Текст для поиска</a>
Ответы (2 шт):
Автор решения: Denis640Kb
→ Ссылка
document.addEventListener('DOMContentLoaded', function () { // При загрузке документа
let a = document.querySelectorAll('.link-to-search'); // Получаем ссылки по классу
let search = document.querySelector('.searher-inp'); // Получаем поле ввода
let send = document.querySelector('.submiter-btn'); // Получаем кнопку
a.forEach(function (c) { // Для всех ссылок
c.addEventListener('click', function (e) { // Отслеживаем нажатие
search.value = c.innerText; // Вводим текст в поле поиска
send.click(); // Нажимаем кнопку
})
})
})
.link-to-search{
display: block;
width: 100%;
}
<form>
<input type="search" class="searher-inp">
<input type="submit" class="submiter-btn">
</form>
<a class="link-to-search">Текст для поиска1</a>
<a class="link-to-search">Текст для поиска2</a>
<a class="link-to-search">Текст для поиска3</a>
Автор решения: Denis640Kb
→ Ссылка
Дополнительный ответ(По просьбе ТС):
Выбирать значения в поле select, вместо записи в поле поиска:
P.S + убирать кавычки из текста в ссылке.
document.addEventListener('DOMContentLoaded', function () { // При загрузке документа
let a = document.querySelectorAll('.link-to-search'); // Получаем ссылки по классу
let sel = document.querySelector('#sel'); // Получаем поле ввода
a.forEach(function (c) { // Для всех ссылок
c.addEventListener('click', function (e) { // Отслеживаем нажатие
sel.value = c.innerText.replace(/"/g, '');
})
})
})
.link-to-search{
display: block;
width: 100%;
}
<select id="sel">
<option value="Текст для поиска1">Текст для поиска1</option>
<option value="Текст для поиска2">Текст для поиска2</option>
<option value="Текст для поиска3">Текст для поиска3</option>
</select>
<a class="link-to-search">Текст для поиска1</a>
<a class="link-to-search">Текст "для" поиска2</a>
<a class="link-to-search">Текст для поиска3</a>