unten ist mein My Code
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
Und mein Html-Code ist
<div class="ui-widget">
<input name="searcharea" class="selectarea" id="searcharea" type="text" value="" placeholder="Area">
</div>
Und meine Funktion ist
<script>
$(function(){
$( "#searcharea" ).autocomplete({
source: "suggestions.php"
});
$( "#searchcat" ).autocomplete({
source: "suggestions1.php"
});
});
</script>
Ich habe diese Seite in eine separate Datei mit dem Suchcode meiner Website eingebunden und ich habe sie auf verschiedenen Seiten eingebettet. Auf meiner Indexseite schlägt sie mir Werte aus den Quelldateien vor, aber auf anderen Seiten gibt sie mir einen Typerror in der Zeile
$( "#searcharea" ).autocomplete({
Der Link zu meiner Website lautet: http://www.jodhpuryp.in/
Dies ist die Quelle meiner Autosuggestionsbox http://api.jqueryui.com/autocomplete/
Kann mir jemand sagen, warum ich diesen Fehler auf anderen Seiten meiner Website erhalte, während er auf der Index-Seite funktioniert?
Ich habe das Problem gefunden, ich habe eine andere Jquery-Datei für meinen Google-Übersetzer eingebunden, die miteinander in Konflikt stehen und dazu führen, dass die Autovervollständigungsfunktion nicht geladen wird.
Klingt so, als ob Autocomplete aufgerufen wird, bevor die Bibliothek, die es definiert, tatsächlich geladen ist - wenn das Sinn macht?
Wenn Ihr Skript inline ist und nicht referenziert, verschieben Sie es an den unteren Rand der Seite. Oder (meine bevorzugte Option) platzieren Sie das Skript in einer externen .js-Datei und referenzieren Sie es dann:
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<script src="yourNewJSFile"></script>
Bearbeiten: Wenn Sie Ihr Skript auslagern, stellen Sie sicher, dass es NACH den JQuery-Bibliotheken referenziert wird, auf die es angewiesen ist :)
Beachten Sie, dass, wenn Sie nicht die vollständige jquery UI-Bibliothek verwenden, dies ausgelöst werden kann, wenn Sie Widget, Menu, Position oder Core vermissen. Je nach Version von jQuery UI kann es unterschiedliche Abhängigkeiten geben