Как в ссылку вставить ссылку на форму поиска?
Есть такая форма поиска:
<input name="searchword" placeholder="Поиск" id="search-searchword" size="30" maxlength="200" value="" class="inputbox" type="text"> Как сделать обычную ссылку с ссылкой в форму поиска? |
<a href="#search-searchword" >Search</a> <input name="searchword" placeholder="Поиск" id="search-searchword" size="30" maxlength="200" value="" class="inputbox" type="text"> |
Нет, мне нужно вставить в ссылку слова, при нажатие на которую будет происходить поиск с заданным словом.
|
<a href="#search-searchword" >Что-то нужное</a> <input name="searchword" placeholder="Поиск" id="search-searchword" size="30" maxlength="200" value="" class="inputbox" type="text"> <script> document.querySelector('a').onclick = function() { document.querySelector('#search-searchword').value = this.innerText; } </script> |
Мне нужно много таких ссылок сделать. Я делаю теги, при нажатии на которых должен проходить поиск.
Так что для каждого слова свой скрипт подключать? |
Лучше, чтоб скрипт в ссылку вставить можно было, или так нельзя?
|
Цитата:
|
Я хотел в ссылки вставит скрипт на выполнения поиска по сайту с нужными мне запросам. Можно или нельзя так сделать?
|
Облако тегов делаю я вручную.
|
Цитата:
|
Цитата:
|
А я хочу сделать ссылки, при нажатии на которых будет происходит поиск по нужным мне запросам.
|
Скрипт в ссылке
<a href="#search-searchword" onclick = "document.querySelector('#search-searchword').value = this.innerText;">Что-то нужное</a> <input name="searchword" placeholder="Поиск" id="search-searchword" size="30" maxlength="200" value="" class="inputbox" type="text"> Один скрипт на все ссылки <a href="#search-searchword" onclick= "fillSearch(this)" >Что-то нужное</a> <a href="#search-searchword" onclick= "fillSearch(this)" >Что-то ненужное</a> <input name="searchword" placeholder="Поиск" id="search-searchword" size="30" maxlength="200" value="" class="inputbox" type="text"> <script> function fillSearch(src) { document.querySelector(src.href.substr(src.href.indexOf('#'))).value = src.innerText; } </script> |
Хотеть не вредно, но не надо путать мух с котлетами. Поиск, это поиск, а теги, это есть ссылки с уже определенными параметрами запроса, которые приведут пользователя на конкретный ресурс. При этом теги есть ключевые слова этих ресурсов. Ищите в сети, что такое облако тегов, их реализация (они могут формироваться и клиентом, но на основе параметров переданных севером).
Производить поиск по сайту посредством кучи ссылок, это бред. |
Вставляю ссылку:
<a href="" onclick = "document.querySelector('чудо').value = this.innerText;">чудо</a> И не чего не работает. |
laimas, не бред. Я встречал много расширений, так работающих.
|
Цитата:
Запомните, что не пользователь для вас, а вы для него. С годами выработана и форма поиска, и даже иконки кнопок запуска поиска, и пользователь интуитивно понимает, что он ожидает от этого действия. А теги, это совсем иное, не порите хрени. |
Я хрени не порю и бред не несу. Использовал лично такой модуль. Называется он Tor_Tags Joomla.
|
Ну так это облако тегов, не поиск по сайту. В конце концов поймите, что теги, это определение ресурсов. Причем добавление тега и ресурс с ним связанный определяется через административный раздел посредством этого модуля. Тег не является поиском.
Решений облака тегов множество, есть в которых можно получать их порциями (подгрузка), есть даже и поле ввода для поиска по тегам, то есть по тематике ими определенными. Ссылка тега уже определена, результат работы этого модуля на страницах Джумла посмотрите. PS. Или вы ведете речь как раз об админке, в которой нужно связать ссылки с ресурсами? Тогда откуда сами ссылки в коде, они должны формироваться автоматически по определенным параметрам, коли модуль использовали, значит должны знать это. |
Цитата:
<a href="" onclick = "document.querySelector('#search-searchword').value = this.innerText;">чудо</a> |
Цитата:
|
Вот так:
<a href="#search-searchword" onclick = "document.querySelector('#search-searchword').value = this.innerText;">Чудо</a> Работает подставление в форму, а перехода по форме нет. |
Уже лучше, хоть какие то сдвиги есть.
|
<a href="#search-searchword" onclick = "document.querySelector('#search-searchword').value = this.innerText;">Чудо</a>
Как сделать еще переход по форме? |
Цитата:
Сам наверняка поначалу такую же |
Так это не я код писал. Я мог бы сделать код тупо ссылками типа:
search/?searchword=Бог (это бы были теги на поиск). Как мне писали здесь и говорили так сделать. Но проблема заключается в том, что у меня на сайте нету ?searchword=Бог у меня просто search.html с результатами поиска. По этому мне нужно сделать авто поставление текста в форму и автоматической отправки ее при нажатии на ссылку. Как сделать. |
Цитата:
Беда прогеров не в том, что они не знают на текущий момент о неких функциях языка, а в том, что не имеют понятий их применения. А это является следствием искаженных представлений задач, а следовательно и путей их решения. Нет, до такого бреда, что в этой теме, я не додумался в своей практике. И поддерживать эту муть желания тоже нет. :) Теги, их суть, это есть навигация по сайту, такая же как и любая иная ссылка или меню. Теги могут определяться и картой сайта. А вот поиск по умолчанию, это null, и ищет он то, что не определено ссылками/тегами на текущий момент времени. Задачи у поиска несколько иные. |
Ну понятно, программисты, профессионалы и эксперты. Я не программист, просто изучаю Joomla и создаю сайты на различных CMS, меняю их стиль.
По этому знаний по программированию у меня нет. Вот обратился за помощью на форум и мне на 50% помогли. |
Цитата:
Вы же изобретаете какой-то гибрид. :) |
Цитата:
|
Модуль тегов в Joomla выводит список материалов привязанных к заданному тегу. А меня это не устраивает. Мне нужен поиск.
Вы посмотрите компонент TorTags для Joomla, там теги сделаны для поиска. Вы посмотрите 1С-Битрикс - там теги сделаны для поиска. По этому сами не пишите бред. |
Бред пишут профессионалы и эксперты, потому что тегов не разу в жизни не видели (нормальных)
|
Непутевые блин ((
|
Nexus, кто вам виноват, что вы не видели не разу в своей жизни тегов нормальных. А строите из себя эксперта. Вот нюб((
|
Цитата:
Теги не являются поиском, не надо гнать чушь. В этом модуле вы указываете тег и связываете его с ресурсом. Причем тут поиск? Цитата:
Судя по теме вашей, видели вы много, но и много просто не понимаете. |
В компоненте TorTags теги ведут на страницу результата поиска. Вот там просто ссылки выглядят не так как у меня.
Есть еще плагин SearchTags называется, он подставляет ключевые слова в ссылки на страницу результатов поиска. В 1С-Битрикс теги сделаны на страницу результатов поиска. В самой Joomla ссылки плохо сделаны на список материалов. Но вообще я разобрался. Вот что у меня вышло: <a class="tag" href="javascript:void(0)" onclick = "document.querySelector('#search-searchword').value = this.innerText; document.querySelector('#searchForm').submit();">Чудо</a> Спасибо за помощь, людям, которые мне помогли. Удачи и всех благ. |
Пусть вас Бог бережет и оберегает. Удачи и всех благ.
|
Espey,
Лучше все-таки такой вариант, для многих ссылок одна функция <a href="#search-searchword" onclick= "fillSearch(this)" >Что-то нужное</a> <a href="#search-searchword" onclick= "fillSearch(this)" >Что-то ненужное</a> <form action="url процедуры поиска" id="searchForm"> <input name="searchword" placeholder="Поиск" id="search-searchword" size="30" maxlength="200" value="" class="inputbox" type="text"> </form> <script> function fillSearch(src) { document.querySelector(src.href.substr(src.href.indexOf('#'))).value = src.innerText; document.querySelector('#searchForm').submit(); } </script> |
Цитата:
Теги, это ключевые слова. Только о понятии "ключевые слова" можно говорить долго. Но если кратко, то с каждым ключевым словом (словами) связываются ресурсы. То есть они ранее уже определены, как слова этих ресурсов имеющие определенный вес, наиболее релевантные. Сам тег, это ссылка передающая параметром ключевое слово (это параметр уже прописан в ссылке тега, кстати не обязательно слово, связи могут быть различными). Эти слова заносятся в базу в таблицу связанную с ресурсами определенными этими тегами. Ссылка по тегу производит запрос к этой таблице, получает ресурс (ресурсы) связанные с этим тегом, и вывод. А уж как вы эту страницу хотите назвать дело хозяйское. Если тег не будет иметь параметра запроса уже указанного в ссылке, то грош ему цена. Помните, что все внутренние ссылки на страницах индексируются поисковиками, причем учитывается и их вес (ранее ссылка давалась). То, что, к примеру, H1 имеет для робота больший вес, чем H2, думаю пояснять не надо. Но почитайте и подумайте зачем к примеру в HTML5 добавлен атрибут role? Удачные ключевые слова вообще могут быть "золотыми". А вы свои теги изначально создаете пустышками, то есть без параметров, задавая их посредством JS. Для робота такие теги (ссылки) пустой звук, то есть сама суть тегов напрочь отсутствует. Вот ссылка на страницу проекта написанного на Джумла, это и есть теги. А что есть поиск как таковой. В MySQL, что использует Джумла, поиск в базе может быть по регулярному выражению и полнотестовый поиск. Второе и можно назвать истинно поиском, и для того чтобы его осуществить полю таблицы обязательно указывает индекс FULLTEXT. Этот поиск имеет логические режимы, хотя в MySQL он и не настолько богат. Но чтобы иметь полное представление о поиске как таковом найдите в сети описание "секретов" поиска в Гугл, Яндекс, о которых вы возможно даже и не подозреваете. |
Цитата:
И да, возможно вы правы и я крайне некомпетентен в этом вопросе :) <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <form class="form"> <input type="seacrh" name="search"/> <input type="submit" value="Submit"/> </form> <div class="search-words"> <span class="pseudo-tag">Word 1</span> <span class="pseudo-tag">Word 2</span> <span class="pseudo-tag">Word 3</span> </div> <script type="text/javascript"> $(function(){ var $form=$('form.form'), $words=$('.search-words .pseudo-tag'); //form submit hander $form.submit(function(e){ e.preventDefault(); alert('Default event was stopped'); console.log('Form data: ',$(this).serialize()); }); $words.click(function(){ $form.find('[name="search"]').val($(this).text()); $form.submit(); }); }); </script> |
Часовой пояс GMT +3, время: 20:19. |