Отправить пользовательский поиск Google с помощью Jquery

Я использую пользовательский поиск Google, и я хотел бы отправить его форму, используя свой собственный div с Jquery. Я пробовал много вещей без везения, это одно из них:

Код Google:

<script>
  (function() {
    var cx = 'partner-pub-2789521296837340:9402765321';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
        '//www.google.com/cse/cse.js?cx=' + cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse, s);
  })();
</script>


<gcse:search></gcse:search>

Часть Jquery:

$( document ).ready(function() {

$( "div.button" ).click(function() {
  $( "form.gsc-search-box" ).submit();
    return false;
});


});

Живой пример: JsFiddle


person Youss    schedule 06.10.2013    source источник


Ответы (1)


Мы не можем отправить форму (т. е. созданную Google внутри с использованием jQuery) напрямую. Вы должны изменить свой код, чтобы изменить внешний вид. Вот тот, который вы ищете:

<form id="cse-search-box" action="http://google.com/cse">
  <input type="hidden" name="cx" value="YOUR SEARCH ENGINE ID goes here" />
  <input type="hidden" name="ie" value="UTF-8" />
  <input type="text" name="q" size="31" />
  <input type="submit" name="sa" value="Search" />
</form>
<img src="http://www.google.com/cse/images/google_custom_search_smwide.gif">

Ссылка: https://support.google.com/customsearch/answer/1351747?hl=en

ДЕМО-СКРИПКА

person Unknown    schedule 06.10.2013
comment
Большое спасибо :) Есть идеи, как сделать так, чтобы результаты поиска открывались на той же странице? - person Youss; 06.10.2013