Ich habe eine jQuery UI Autocomplete
, die gut funktioniert, wenn das zurück json
Objekt sieht wie folgt aus:jQueryUI automatische Vervollständigung Wert anders als Label
label:name
value:name
Dann sucht es durch myname und wenn der Benutzer eine auswählt, füllt sie das Eingabefeld mit meinem Namen.
Aber was ich will, ist für das JSON-Objekt wie folgt aussehen:
label:name
value:id
Wenn ich dies tun, füllt der Autovervollständigung das Eingabefeld mit der ID-Nummer anstelle des Namens Zeichenfolge.
Wie kann ich die automatische Vervollständigung den angezeigten Text auf den Namen und den versteckten Wert auf den Wert setzen lassen?
Ich sehe keine Möglichkeit, dies in den offiziellen Dokumenten zu tun.
Hier ist meine Autocomplete:
$("#eventAccount").autocomplete({
minLength: 2,
source: function (request, response) {
var term = request.term;
if (term in cache) {
response(cache[term]);
return;
}
request.e = "getMyAccountAutocomplete";
$.getJSON("/admin/ajaxController.php", request, function (data, status, xhr) {
cache[term] = data;
response(data);
});
}
});
Und die JSON es zurückzubekommen:
[{"label":"My fancy name","value":"229"}]
möglich Duplikat von [Automatische Vervollständigung Wert Anwendung zu Textbox nicht beschriften] (http://stackoverflow.com/questions/7642855/autocomplete-applying-value-not-label-to-textbox) –