Estoy tratando de utilizar de arranque Twitter para obtener los fabricantes de mi DB.Twitter typeahead de arranque (método 'toLowerCase' de la indefinida)
Debido typeahead Twitter arranque no admite llamadas ajax estoy usando este tenedor:
https://gist.github.com/1866577
En esa página hay esta comment que menciona cómo hacer exactamente lo que yo quiero hacer. El problema es cuando ejecuto mi código guardo en conseguir:
Uncaught TypeError: Cannot call method 'toLowerCase' of undefined
Googled vuelta y se encontró intentado cambiar mi archivo de jQuery para ambos usando el minified y no minified, así como la alojado en Google Code y me quedé obteniendo el mismo error
Mi código actualmente es el siguiente:
$('#manufacturer').typeahead({
source: function(typeahead, query){
$.ajax({
url: window.location.origin+"/bows/get_manufacturers.json",
type: "POST",
data: "",
dataType: "JSON",
async: false,
success: function(results){
var manufacturers = new Array;
$.map(results.data.manufacturers, function(data, item){
var group;
group = {
manufacturer_id: data.Manufacturer.id,
manufacturer: data.Manufacturer.manufacturer
};
manufacturers.push(group);
});
typeahead.process(manufacturers);
}
});
},
property: 'name',
items:11,
onselect: function (obj) {
}
});
en el campo URL he añadido el
window.location.origin
para evitar cualquier problema como ya se ha discutido en otra pregunta
también antes de que fuera utilizando $.each()
y luego decidió utilizar como $.map()
recomendado Tomislav Markovski en un similar question
Alguien tiene alguna idea de por qué me siguen dando este problema ?!
Gracias
¿Ha intentado depurar el código JavaScript usando Firebug o las herramientas de desarrollo F12 de IE para encontrar exactamente dónde está tratando de llamar 'toLowerCase()'? –
@Cory usando la herramienta Inspeccionar de Google Chrome Obtengo que el error está en la línea de código de arranque de twitter 1664 Equivalente a la línea 124 en el [tenedor] (https://raw.github.com/gist/1866577/dd58c66be9dcb5b770e7f51a6cff324bec856021/bootstrap- typeahead.js) – mmoscosa
@mmoscosa en Chrome Herramientas de desarrollo Muchos errores de Javascript tienen un menú desplegable con otros errores en el interior y uno de esos errores es la línea en su código donde aparece ese error. El error está asociado con algo en el arranque, pero donde realmente aparece el error está en tu propio código. –