我尝试添加多个项目列表,但所有值都移到最后一个列表。你知道吗
我看着控制台F12,我好像在页面渲染后被打了电话。
for (var i: number = 0; i < ExternalPartyList.length; i++) {
var $deferred = $.Deferred<string[]>();
var id = i + 1;
$('#contactingPartiesSelects').append(`<select id="externalPartiesList` + id + `" class="externalPartiesList" name="contractingpartyname" size="1"></select>`);
Repositories.GetListItemsDataAccess(Constants.ListTitles.ExternalParties).done(function (res) {
for (let j = 0; j < res.length; j++) {
$("#externalPartiesList" + id).append($('<option>', {
value: res[j].split("-")[0],
text: res[j].split("-")[1]
}));
}
$deferred.resolve(res);
}).fail(function (error) {
$deferred.reject(error);
}).always(function () {
var options = $('#externalPartiesList' + id + ' option');
var arr: any;
arr = options.map(function (_, o: any) { return { t: $(o).text(), v: o.value }; }).get();
arr.sort(function (o1: any, o2: any) { return o1.t.toLowerCase() > o2.t.toLowerCase() ? 1 : o1.t.toLowerCase() < o2.t.toLowerCase() ? -1 : 0; });
options.each(function (m, o: any) {
o.value = arr[m].v;
$(o).text(arr[m].t);
});
});
}