带冒号的数组不起作用

Array with colon not working

本文关键字:数组 不起作用      更新时间:2023-09-26

我已经创建了一个数组,但我想在其中添加一个冒号,以便在选择选项字段中显示它。

我的代码:

var listInfo = '';
var listItemEnumerator = listItems.getEnumerator();
var item;
var listItemInfo = '';
var i = 0;
var index = 0;
var aanvragersarray = new Array();
while (listItemEnumerator.moveNext()) {
    item = listItemEnumerator.get_current();
    //Aanvragerslijst ophalen en in array stoppen
    if (item.get_item("Aanvrager")) {
         var aanvragerID = item.get_item("ID");
         var aanvrager = item.get_item("Aanvrager");
         aanvragerslijst.push([aanvragerID, aanvrager]);
         var row = { ID: aanvragerID, naam: aanvrager }
         aanvragerslijst.push(row);
    }
    i++;
}

我需要这样的东西:

//Select field aanmaken met aanvragers
// Add the list of numbers to the drop down here
selectValues = { 1: "james", 2: "mark" };

用javascript创建这样一个带有循环的数组可能吗?

要创建的选项数组实际上是一个关联数组。这意味着您可以直接使用索引/键和值声明并填充它:
var selectList = {};
selectList[1] = "james";
selectList[2] = "mark";
console.log(selectList); // prints Object { 1="james", 2="mark"}

aanvragersarray声明为{},并在循环中填充它。

更新

根据OP编辑到@hsz答案中的更新,以下JSFiddle显示它确实在工作。

我的数组有些奇怪。它会将空选项添加到列表中。见下文=>

<select id="LKAanvrager"><option value="0"></option><option value="1"></option><option value="2">Wendy</option><option value="3"></option><option value="4">Benny</option><option value="5"></option><option value="6">Kris</option></select>

这是我的功能

function onLoadItemsSuccess(sender, args) {
var listInfo = '';
var listItemEnumerator = listItems.getEnumerator();
var item;
var listItemInfo = '';
var i = 0;
var index = 0;
while (listItemEnumerator.moveNext()) {
    item = listItemEnumerator.get_current();
    //Aanvragerslijst ophalen en in array stoppen
    if (item.get_item("Aanvrager")) {
        var aanvragerID = item.get_item("ID");
        var aanvrager = item.get_item("Aanvrager");
        aanvragerslijst[aanvragerID] = aanvrager;
    }
    i++;
}

//Select field aanmaken met aanvragers
 $.each(aanvragerslijst, function (key, value) {
     $('#LKAanvrager').append($("<option/>", {
         value: key,
         text: value
     }));
});

}

我需要我自己的id作为值,因为它们与我添加到列表中的表单匹配。

有人建议吗?

要填充select选项字段,请使用json语法

以下是json数组存储值的语法

var selectedValues=[{1:"james"},{2:"mark"}]