gpt4 book ai didi

javascript - 使用 javascript/jquery 数组生成选择菜单

转载 作者:行者123 更新时间:2023-11-30 12:46:11 26 4
gpt4 key购买 nike

我正在尝试使用 javascript 数组生成 HTML 选择菜单。数组键应该用作选项的值。如果数组键作为数字输入(就像我在代码中所做的那样),它们应该被接受。

a([selected="No of rooms", 1="1", 2="2", 3="3", 4="4", 5="5"]);


function a(x) {
elementString = "<select>";
for(var i in x) {
elementString += '<option value="">'+i+'</option>';
}
elementString += "</select>";
alert(elementString);
}

但是这段代码不起作用。而且我找不到使用数组键作为值的方法选项。我得到的另一个问题是,如果我将数字作为键,它不起作用(这是一个要求)。

jsfiddle

编辑:jsfiddle 链接现在有效

最佳答案

您的代码在语法上是错误的,JavaScript 没有关联数组,数组元素的键是它们的索引,但是您可以使用对象:

a({selected: "No of rooms", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5"});

但需要注意的是,JavaScript 对象是没有顺序的,即生成的元素在每个浏览器中可能不同。如果你想保持顺序,你应该使用一个数组,在本例中是一个对象数组:

a([{
text: "No of rooms",
value: "...",
selected: true
}, {
text: "one",
value: "1",
selected: false
}]);

function a(x) {
var elementString = "<select>";
for (var i = 0; i < x.length; i++) {
elementString += '<option value="' + x[i].value + '"' + (x[i].selected ? "selected='selected'" : '') + '>' + x[i].text + '</option>';
}
elementString += "</select>";
// document.body.innerHTML = (elementString);
}

关于javascript - 使用 javascript/jquery 数组生成选择菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22423766/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com