Sto cercando di utilizzare twitter bootstrap per ottenere i produttori dal mio DB.twitter bootstrap typeahead (metodo 'toLowerCase' di undefined)
Perché Twitter bootstrap typeahead non supporta le chiamate ajax Sto usando questo bivio:
https://gist.github.com/1866577
In quella pagina c'è questa comment che cita come fare esattamente quello che voglio fare. Il problema è che quando faccio funzionare il mio codice Continuo a ottenere:
Uncaught TypeError: Cannot call method 'toLowerCase' of undefined
Googled intorno e venne provato a cambiare il mio file jquery sia utilizzando il minified e non minified così come quello ospitato su Google Code e continuavo ottenendo lo stesso errore
Il mio codice attualmente è il seguente:
$('#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) {
}
});
sul campo URL ho aggiunto la
window.location.origin
per evitare problemi come già discusso su un'altra questione
anche prima che io fossi utilizzando $.each()
e quindi deciso di utilizzare $.map()
come consigliato Tomislav Markovski in un similar question
Qualcuno ha idea del perché continuo a ricevere questo problema ?!
Grazie
Hai provato a eseguire il debug del codice JavaScript utilizzando Firebug o gli Strumenti di sviluppo F12 di IE per trovare esattamente dove sta cercando di chiamare 'toLowerCase()'? –
@Cory utilizzando Google Chrome Ispezionare strumento ottengo che l'errore si trova sulla linea di codice di bootstrap Twitter 1664 Equivalente alla linea 124 sul [fork] (https://raw.github.com/gist/1866577/dd58c66be9dcb5b770e7f51a6cff324bec856021/bootstrap- typeahead.js) – mmoscosa
@mmoscosa in Chrome Strumenti per sviluppatori molti errori javascript hanno un dropdown con altri errori interni e uno di quegli errori è la riga del codice in cui viene visualizzato tale errore. L'errore è associato a qualcosa nel bootstrap, ma dove l'errore si verifica effettivamente è nel tuo codice. –