Ich habe eine allgemeine JavaScript-Funktion, die Daten füllen zur Liste wie folgt:Wie kann man auf Objektschlüssel per Index in jquery zugreifen?
// manage all drop down list control
var ajaxFillDropDownList = function (options, ddl) {
ddl.find("option").remove();
ddl.addClass("form-control required")
.append($("<option />").attr("value", "")
.text("------ Please Select a item --------")
);
$.ajax(options)
.done(function (data) {
var result = "";
if (data.value) {
result = JSON.parse(data.value);
}
$.each(result, function (rowIndex, r) {
ddl.append($("<option></option>")
.val(r.?)
.text(r.?);
});
})
.fail(function (error) {
ddl.append($("<option />").attr("value", "").text("error in load"));
});
}
Die folgende Funktion aufgerufen wird:
// -- Fill dropdownlist
var fillMyList = function() {
try {
var options = {
type: "POST",
url: "/User/GetUserList",
data: JSON.stringify({}),
contentType: "application/json; charset=utf-8",
dataType: "json"
}
ajaxFillDropDownList(options, $("#ddlUser"));
} catch (error) {
ShowClientErrorMessage("client Error", error.stack, error.message);
}
}
I Schlüssel Ergebnis wie dynamisch in $ .each Schleife möchten. Ich bin es leid, den Code unten zu verwenden, aber die Liste ist mit Schlüsselnamen gefüllt.
.val("r." + Object.keys(r)[0])
Ich wäre dankbar, wenn jemand mich führen könnte.
Objekte haben keine intrinsische Ordnung, so durch den Index nicht zugegriffen werden kann. Wenn Sie dieses Verhalten benötigen, verwenden Sie ein Array –
Danke an alle. Mein Problem wurde gelöst. –