Ich benutze die Bootstrap-3 Typeahead Plugin ebenso wie Bootstrap Tag Input Plugin. Ich benutze es so:
<input type="text" id="name" name="test" data-provide="typeahead">
Und die jQuery:
$.get("/design/assets/advertisements/countries.json", function(data) {
$("#name").typeahead({
source: data
});
$("#name").tagsinput({
typeahead: {
source: data
}
});
}, "json");
Der Typkopf und die Tags funktionieren jedoch bis zu einem gewissen Punkt. Wenn ich ein paar Wörter eingebe, bekomme ich Vorschläge, aber wenn ich einen Vorschlag ausgewählt habe, wird alles, was ich geschrieben habe, nach der Tag-Eingabe hinzugefügt.
Beispiel: Wenn ich schreibe "Bah
"und wählen Sie"Bahamas
", sieht es so aus: (Wo ich glauben würde, dass es die" Bah "löschen würde)
Ich erhalte diesen Fehler - ich weiß nicht, ob dies der Grund ist:
Uncaught TypeError: Cannot read property "name" of undefined
Der Fehler wird zu dieser Datei aufgerufen: bootstrap3-typeahead.js
Antworten:
5 für die Antwort № 1Ich habe eine nicht-min-Version des Bootstrap-3-Typeahead-Plugins heruntergeladen und Folgendes geändert:
displayText: function(item) {
return item.name || item;
},
dazu
displayText: function(item) {
if (typeof item == "undefined") {
return "";
}
return item.name || item;
},
Es hat das Problem gelöst.
Eigentlich weiß ich nicht, ob es sich um einen Bootstrap-3-Typ-Plugin-Bug handelt oder um eine Art Inkompatibilität mit Bootstrap-Tags, die ich verwenden.