Según el método de uso de Typeahead encontrado en línea, se produjo un error en el último paso. Los datos se pueden leer desde la base de datos, pero cuando el mensaje se muestra en el cuadro de entrada, todo se muestra como: subfined. Después de explorar durante mucho tiempo, no pude averiguar cuál era el problema. Más tarde, accidentalmente encontré esta oración en http://blog.64cm.com/post/2014/08/13/%E4%BD%BF%E7%94%A8Bootstrap-TypeAhead%E6%8F%92%E4%BB%B6: "En la versión actual de typeahead, ya no es el que ya no se llama el metod de la fuente de la fuente. fuente de datos ". Me recordé porque según el método en línea, llamo directamente al método AJAX en la fuente.
Mirando hacia atrás en la demostración de ACE actual, aunque no hay un ejemplo de llamar a Ajax, también hay comentarios para explicar cómo usarlo, pero está en inglés (fuera de tema: es realmente importante entender el inglés haciendo tecnología), y después de un tiempo, finalmente se puede mostrar correctamente. El código se publica de la siguiente manera:
código JS
<script type = "text/javaScript"> jQuery (function ($) {//typeeahead.js//example tomado en la página del complemento en: https://twitter.github.io/typeeahead.js/examples/var substringMatcher = function () Palabra clave equipada, ProcessJ es el valor VAR devuelto Las coincidencias, "SubtringeGex; var params = {" token ": getStorage (" token ")," indicador ": 0," nombre ": consulta}; var parameter_str =" "; for (var key en params) {parameter_str+=" & "+key+"+params [key];} fullURL = getOption ("gykj_host")+"institución/lista?"+getOption ("gykj_callbackparam")+"="+getOption ("gykj_callbackfu nc ")+parameter_str; $ ("#submenu_info "). html (fullURL); $. Ajax ({url: fullURL, type: 'get', dataType:" jsonp ", jsonp: getoptio n ("gykj_callbackparam"), jsonpCallback: getOption ("gykj_callbackfunc"), async: false, error: function () {alert ("list:"+ge toption ("ConnectionRormessage"));}, éxito: function (data) {// $ ("#submenu_info"). html (fullurl); if (data.code == 0) {var arr, substringeGex; arr = []; substrregex = new Regexp (consulta); // Esto debe ser, o todavía aparece como subfinado para (el elemento var en data.data) {var str = data.data [item] .name; if (substrregex.test (str)) for more infoarr.push({ value:str});}}process(arr);}}})}}$('input.typeahead').typeahead({hint: true,highlight: true,minLength: 1}, {name: 'states',displayKey: 'value',source: substringMatcher()//The ajax method cannot be called directly in the source property of the current version, and El método SubstringMatcher () se usa});}); </script>html
<
Lo anterior es el problema y la solución para usar el complemento Bootstrap Typeahead para completar automáticamente el cuadro de entrada. Espero que sea útil para todos. Si tiene alguna pregunta, déjame un mensaje y el editor responderá a todos a tiempo. ¡Muchas gracias por su apoyo al sitio web de Wulin.com!