в тексте предложения нажмите, добавьте в строку поиска текст предложения (пример (отображение результатов для YouTube)) - PullRequest
0 голосов
/ 01 января 2019

поэтому на моем веб-сайте я использую систему пользовательского поиска Google, когда я ищу пример 'youtub', а не 'youtube', он отображается в качестве предложения (отображение результатов для youtube - поиск вместо youtub) или (Вы имели в виду: youtube)

image

поэтому, когда я нажимаю на текстовую YouTube, я хочу добавить ее в окно поиска, как я могу это сделать?это мой код

searchbox .html

<form action="" method="GET" id="searchform">
<input required="" type="search" name="q" id="searchbox" placeholder="Search..." title="Search..." enableAutoComplete="true" autofocus/>
<button><div class="Search-Button"><img src="MYIMGHERE" class="search-png"/></div></button>
</form>

.js

<script type="text/javascript">
(function() {
var cx = '007072537540236505002:fsvzbpwgtgc';
var gcse = document.createElement('script');
gcse.type = 'text/javascript';
gcse.async = true;
gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(gcse, s);
})();
var urlParams = new URLSearchParams(window.location.search);
document.getElementById('searchbox').value = urlParams.get('q');
</script>

<gcse:searchresults-only linktarget="_self"></gcse:searchresults-only>

мой вопрос не очень понятен, потому что я не могу найти правильные слова!мне так жаль.

Ответы [ 2 ]

0 голосов
/ 11 января 2019

Решение!

$(document).on('click', '.gs-spelling', function(e) {
window.location.search = 'q=' + ($(this).find('i').text());
document.getElementById('searchbox').value = ($(this).find('i').text());
});
0 голосов
/ 05 января 2019

Запрошенный новый поиск для youtube не пойдет прямо в окно поиска пользователя, потому что он не будет знать, как обрабатывать файл JSON, возвращенный из Google.

Вместо этого вам нужно реализовать собственный GoogleКомпоненты searchbox и searchresults, которые можно выполнить несколькими способами.

Собственное руководство Google по этому вопросу, здесь , объясняет различные параметры и предоставляет ссылки на примеры jsFiddle, а именно:

в зависимости от общего эффекта, который вы хотите.Так, например, вам нужно добавить <gcse:search></gcse:search> в ваш HTML, а API Google сделает все остальное.

Обратите внимание, что в последнем примере текст автоматически не заменяется текстом с автопоставкой, если это то, что выискали.

И это так просто!

Более подробное и техническое объяснение того, как все это сочетается, можно найти здесь: Пользовательский поиск JSON API .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...