Typeahead TypeError: es.toLowerCase keine Funktion
Guten Tag. Bitte werfen Sie einen Blick auf mein scrit ersten.
Mein JS
$(document).ready(function(){
$("#outlet").typeahead({
source: function(query, process) {
$.ajax({
url: '<?=base_url();?>graph/outletlists',
data: {outlets:$("#outlet").val()},
type: 'POST',
dataType: 'JSON',
success: function(data) {
process(data);
console.log(data);
}
});
},
minLength: 2
});
});
Mein Controller
function outletlists()
{
extract(populateform());
$hasil = $this->modelmodel->showdata("SELECT Outlet from transaksi where outlet like '%".$outlets."%' group by Outlet");
echo json_encode($hasil);
}
und meine form
<div class="form-group">
<label class="col-sm-3 control-label">Outlet</label>
<div class="col-sm-5">
<input type="search" id="outlet" class="form-control" placeholder="Search..." data-provide="typeahead" />
</div>
</div>
so, ich bin mit Bootstrap3-typeahead. Aus meinem Skript oben habe ich diese Fehler
vom console.log(data)
ich habe bereits meine gewünschten Ergebnis. Also meine Probleme sind ich kann nicht sehen, jeder Vorschlag und dann bekam ich diese Fehlermeldung von firebug
return ~it.toLowerCase().indexOf(this.query.toLowerCase());
Dies ist, was ich habe, wenn ich input AR
[{"Outlet":"K-AR3"},{"Outlet":"K-AR4"},{"Outlet":"K-ARN2"},{"Outlet":"K-ARN3"}]
jede Hilfe würde geschätzt, sorry für mein schlechtes Englisch.
Ich versuche es zu machen, wie das Beispiel bei http://twitter.github.io/typeahead.js/examples/
var states = ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California',
'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii',
'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana',
'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota',
'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire',
'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota',
'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island',
'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont',
'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming'
];
$(document).ready(function() {
$("#outlet").typeahead({
autoSelect: true,
minLength: 2,
delay: 400,
source: states
});
});
und es funktioniert .
Ergebnisse aus firebug
POST http://localhost:84/new_store/graph/outletlists 200 OK 375ms
jquery-....min.js (Zeile 4) HeadersPostResponseHTMLCookies[{"Outlet":"K-AR3"},{"Outlet":"K-AR4"},{"Outlet":"K-ARN2"},{"Outlet":"K-ARN3"}]
TypeError: b.Kleinschreibung ist nicht eine Funktion
...auf(a){var
b=diese.Anzeigetext(a);return~b.toLowerCase().indexOf(dies.Abfrage.toLowe...bootstr....min.js (line 1, col 2903
Ich versuche zu ändern meine bootstrap3-typeahead.js
zu bootstrap3-typeahead.min.js
Ende meine Fehler werden, wie dies
TypeError: b.Kleinschreibung ist nicht eine Funktion ...auf(a){var
b=diese.Anzeigetext(a);return~b.toLowerCase().indexOf(dies.Abfrage.toLowe...
- was ist '~es' hier?
- ich weiß es nicht. Es zeigt sich die aus firebug
- drucken / Konsole melden Sie Ihr '~es' zuerst, dann gelten toLowerCase(), debug-Schritt für Schritt
Du musst angemeldet sein, um einen Kommentar abzugeben.
als das, was ich sehen kann, von Ihrem
console.log()
. Sie bekommen diese.brauchen Sie nur
so zu ändern versuchen, Ihren controller zu
versuchen, verwenden Sie folgende Beispiel wird als statischer code und dann machen es dynamisch
Beispiel: http://twitter.github.io/typeahead.js/examples/.
Obwohl es wurde eine akzeptierte Antwort, ich werde eine weitere Antwort, da dieses nicht relevant für meine situation. Es stellte sich heraus, dass einer meiner array-Elemente wurde ein null-Wert. So schrieb ich meine Daten Abfrage auf null-Werte herausfiltern.