Estoy tratando de dar a mi barra de búsqueda la función de autocompletar.
$(function() { var availableTags = [{ "game1": "title1" }, { "game2": "title2" }, { "game3": "title3" }, ]; $("#choices-text-preset-values").autocomplete({ source: availableTags }); }); <script src="https://code.jquery.com/jquery-3.5.0.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> <form method="GET" action="{% url 'search_results' %}" style="display: inline; background-color: transparent;" method="get"> <div id="search_bar" class="row" style="margin-top: 0px; text-align: center;"> <input name="q" class="sb-pos" id="choices-text-preset-values" type="text" placeholder="Aramak istediğiniz oyunu yazın! " style="padding-left: 30px;" /> <button type="submit" style="background-color: transparent; border: none;" class="sb-icon-pos"> <i class="fa fa-search" style="color: black; font-size: x-large;"></i> </button> </div> </form>Estoy recibiendo este error:
TypeError: $( "#choices-text-preset-values" ).autocomplete is not a function. (In '$( "#choices-text-preset-values" ).autocomplete({ source: ['deneme','deneme2'] })', '$( "#choices-text-preset-values" ).autocomplete' is undefined)Es posible que la API de jQuery (o cualquier API de JavaScript en general) no se encuentre por varios motivos.
Por lo general, el problema se debe a que el código javascript de jQuery no se carga en el momento en que se ejecuta el script. Esto puede deberse a varias razones:
<script>$(document).ready(/*whatever*/);</script> se encuentra antes del <script src="/path/to/jquery.js"></script> bloque, o alternativamente porque por error hizo que la etiqueta del script jquery fuera async . Por lo tanto, asegúrese de que:async .