Nun habe ich mal ein HTML-Modul gebaut. Das übergeben des Suchbegriffs funktioniert und die Ergebnisseite erscheint dann in einem neuen Fenster.
HTML-Code:
<form action="http://search.domain.com/search.php" method="get" id="search_form">
<div>
<label class="invisible" for="ctrl_keywords_33">Suchbegriffe</label>
<input type="text" value="" size="35" placeholder="Suchbegriff" id="query_t" name="query_t" class="ui-autocomplete-input" autocomplete="off" />
<input type="submit" value="Suche" id="t_search" class="sbmt submit" name="smt_button">
<input type="hidden" name="search" value="1" />
</div>
<input type="hidden" value="" name="up_advanced">
<input type="hidden" value="0" name="category">
<input type="hidden" value="0" name="catid">
<input type="hidden" value="" name="cat_sel0">
<input type="hidden" value="" name="cat_sel1">
<input type="hidden" value="" name="cat_sel2">
<input type="hidden" value="" name="cat_sel3">
<input type="hidden" value="" name="cat_sel4">
</form>
Die Autosuggest-Funktion habe ich wie in Sphider-Plus vorgegeben in den <head> via zusätzliche Head-Tags bei dem entsprechenden Seitenlayout eingebettet. Leider funktioniert das nicht. Kann das an dem externen PHP-Skript "suggest.php" liegen?
Das sieht etwas so aus:
HTML-Code:
<script>
$(function() {
$("#query_t").autocomplete({
source: "http://search.domain.com/include/suggest.php?media_only=0&amp;amp;type=and&amp;amp;catid=0&amp;amp;category=0&amp;amp;db=0&amp;amp;prefix=0",
minLength: 1,
select: function(event, ui) {
var item = ui.item;
console.log(item,ui)
if(item) {
$(this).val(item.value);
$(this.form).submit();
}
}
})
})
</script>
<script>
$(function() {
$("#query_m").autocomplete({
source: "http://search.domain.com/include/suggest.php?media_only=1&amp;amp;type=and&amp;amp;catid=0&amp;amp;category=0&amp;amp;db=0&amp;amp;prefix=0",
minLength: 1,
select: function(event, ui) {
var item = ui.item;
console.log(item,ui)
if(item) {
$(this).val(item.value);
$(this.form).submit();
}
}
})
})
</script>
Ich sehe jetzt irgendwie keinen Fehler. Kann so eine Konstruktion überhaupt funktionieren oder muss es anders eingebaut werden?
Ansonsten musste ich noch zwei jquery-Bibs einbinden. In meiner Contao-Installation waren jetzt nicht exakt die Gleichen. Also habe ich prophylaktisch einfach die Zusätzlichen eingebunden.
Lesezeichen