Abajo está mi 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>
Y mi código Html es
<div class="ui-widget">
<input name="searcharea" class="selectarea" id="searcharea" type="text" value="" placeholder="Area">
</div>
Y mi función es
<script>
$(function(){
$( "#searcharea" ).autocomplete({
source: "suggestions.php"
});
$( "#searchcat" ).autocomplete({
source: "suggestions1.php"
});
});
</script>
He incluido esta página en un archivo separado con el código de búsqueda de mi sitio web y lo he incrustado en varias páginas, en mi página de índice, me está sugiriendo los valores de los archivos de origen, pero en otras páginas me está dando typerror en línea
$( "#searcharea" ).autocomplete({
Mi sitio web es el enlace: http://www.jodhpuryp.in/
Esta es la fuente de mi caja de autosugestión http://api.jqueryui.com/autocomplete/
¿Alguien puede decirme por qué se produce este error en otras páginas de mi sitio web mientras que en la página de índice funciona?
Parece que se llama a la función de autocompletar antes de que se cargue la biblioteca que la define, si es que tiene sentido.
Si tu script está en línea, en lugar de referenciado, muévelo a la parte inferior de la página. O (mi opción preferida) coloque el script en un archivo .js externo y luego haga referencia a él:
<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>
Editar: si externaliza su script, asegúrese de que está referenciado DESPUÉS de cualquier librería JQuery de la que dependa :)