Ich habe mit dem Hinzufügen von GCS zu einer Webseite beauftragt. Nachdem ich die Anweisungen befolgt meine freie GCS (http://www.google.com/cse/sitesearch/create) zu erstellen, und klebte den mitgelieferten Code-Schnipsel in die entsprechende Stelle, die Box Suche & Schaltfläche Komponenten machen OK und der Benutzer in der Lage, einen Suchbegriff einzugeben, die Suche und die Ergebnisse zu sehen . So weit, ist es gut.Wie die Google Custom Search (V2) zur Ausführung sofort mit einem vorbelasteten Suchbegriff bekommen?
Wenn jedoch die Komponenten zum ersten Mal machen mag ich in der Lage sein, eine vorge eingegebene Zeichenkette in das Feld zu übergeben und haben programmatisch die sofort ausgeführt Suche. Dieses Bit funktioniert nicht.
Der Code, den ich zur Zeit an der richtigen Stelle ist wie folgt, die aus dem mitgelieferten Schnipsel sowie einige zusätzliche Code abgeleitet aus meiner Lektüre des Custom Search Element Control API doc (https://developers.google.com/custom-search/docs/element) und bestimmt die ‚ausführen sofort‘ umzusetzen:
<div class="content-container">
<script type="text/javascript">
(function() {
var cx = '(my search id)';
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> gname="2DSearch"</gcse:search>
<script type="text/javascript">
var element = google.search.cse.element.getElement("2DSearch");
element.prefillQuery(primarySearch);
element.execute(primarySearch);
</script>
</div>
primarySearch ist die Zeichenfolge, die ich automatisch suchen möchte. Wenn die Komponenten gerendert werden, erscheint die Zeichenfolge 'gname = "2DSearch"' kurz und verschwindet dann wieder, kurz bevor die Suchkomponenten angezeigt werden, dann passiert nichts anderes mehr.
Es scheint einige Ähnlichkeiten hier mit dieser Frage (offen) zu sein: https://stackoverflow.com/questions/15871911/passing-optional-search-parameters-into-google-custom-search-query
ich die Web vergeblich für eine Anzahl von Stunden für etwas anderes relevant gesucht.
Kann mir jemand sagen, warum es nicht funktioniert und/oder, was ich tun muss?
Entschuldigung, ich habe viel Programmieren gemacht, bin aber praktisch Analphabet, wenn es um HTML & Javascript geht. Dank Jim
entdeckte ich, dass die Chrome-Konsole den folgenden Fehler zeigt: Uncaught Reference: Google ist nicht
definiertjetzt Mein Code sieht wie folgt aus:
<div class="content-container">
<script type="text/javascript">
(function() {
var cx = '013736134253840884188:fxsx6zqql_y';
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>
</div>
<div class="gcse-search" data-gname="2DSearch"></div>
<div class="content-container">
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
var element = google.search.cse.element.getElement("2DSearch");
element.prefillQuery(primarySearch);
element.execute(primarySearch);
</script>
</div>
in der Konsole wieder ich bin auch jetzt sehen folgendes:
XMLHttpRequest kann nicht geladen werden (übertragen Sie hier den JSAPI Link oben, dass ich nicht erlaubt bin zu schreiben). Origin (hier die URL für meinen localhost einfügen) ist nicht erlaubt von Access-Control-Allow-Origin.
Es gibt zahlreiche Hinweise auf ähnliche Fehler zu diesem im ganzen Netz, jeweils etwas anders, mit Lösungen vorgeschlagen, die sich auf JSON, JQUERY, AJAX usw. usw. beziehen, aber nichts, was ich gefunden habe, scheint direkt relevant für was ich Ich versuche es zu tun (dh mache meinem Code die Datei oder Bibliothek zugänglich, in der 'google' definiert ist), und nichts, was ich versucht habe, hat funktioniert.
Sprechen Sie über die versuchen, Ihren Weg durch eine Kohlegrube mit einer Kerze zu finden ... :) Prost
Ich habe das kopiert, was funktioniert, zeigt aber das Suchfeld nicht an? es werden nur noch die Suchergebnisse angezeigt. – shorif2000
versuche, 'searchresults-only' auf 'search' umzustellen –