Templates/examples/templates/autocomplete

Fra Shoporama dokumentation
Skift til: Navigation, Søgning

Denne løsning kræver jquery og jquery autocomplete plugin'et, som du kan finde her: [1].

Hvis du kører din javascript i en ekstern fil, vil du skulle indsætte dette i din "global.html" fil for at kunne bruge variablen "webshop_url":

    <script>
		var webshop_url = '<{$baseurl}>';
    </script>

Ellers kan du blot bruge "<{$baseurl}>" i stedet for "webshop_url" i "source"-optionen. Se et fuldt eksempel her under:

$("#searchAutoComplete").autocomplete({
        source: webshop_url + '/ajax_search',
        select: function( event, ui ) {
			$( "#my_ac" ).val( ui.item.name + " / " + ui.item.price );
			return false;
		}
    }).data( 'uiAutocomplete' )._renderItem = function( ul, item ) {
		return $( '<li></li>' )
			.data( 'item.autocomplete', item )
			.append( '<a href="' + item.url + '" class="imgA"><img src="' + item.thumbnail + '" alt="' + item.name + ' billede" />
</a><a href="' + item.url + '"><strong>' + item.name + '</strong></a><p
<strong>Pris: </strong>' + item.price_dk + ' DKK</p><p><strong>Lager: </strong>' + item.stock_string_da + '</p>' )
			.appendTo( ul );
		};

Bemærk at dette er et lidt advanceret eksempel, som tager både screenshots, navn, pris og lagerstatus.

Her kalder vi eks: http://mbn.shoporama.dk/ajax_search?term=buk som returnere et json objekt for hver produkt i søgeresultatet. Klik på linket for at se hvilke felter der kan trækkes ud.

Eksempel på et søgefelt, husk at ID'et skal passe med din jquery selector:

<form action="<{$webshop->getUrl()|escape}>/search">
  <input id="my_ac" type="text" name="search" value="<{$get.search|escape}>" placeholder="Indtast søgeord" required/>
  <input type="submit" value="Søg"/>
</form>


Se et eksempel på http://spilmedsmil.dk