将对象附加到所有选择类javascript
我有4个类为GMetrics的HTML元素,如果我按ID调用元素,我可以设置值,但我认为如果有一个函数来处理填充所有select字段,而不是每个ID有4个单独的函数,这会更干净 我有一个2D数组,其中存储了我的值,我之前使用将对象附加到所有选择类javascript,javascript,Javascript,我有4个类为GMetrics的HTML元素,如果我按ID调用元素,我可以设置值,但我认为如果有一个函数来处理填充所有select字段,而不是每个ID有4个单独的函数,这会更干净 我有一个2D数组,其中存储了我的值,我之前使用document.getelementbyid测试了这个数组,它工作得很好。现在我遇到了一个问题,它在内部while循环上循环了4次(这是我在HTML上拥有的GMetrics类的数量),但它只是将它附加到最后一个类,而不是前3个 window.onload = functio
document.getelementbyid
测试了这个数组,它工作得很好。现在我遇到了一个问题,它在内部while循环上循环了4次(这是我在HTML上拥有的GMetrics类的数量),但它只是将它附加到最后一个类,而不是前3个
window.onload = function popGMetrics() {
var index = 0;
while (index < metrics.length) {
var self = document.getElementsByClassName('GMetrics');
var opt = document.createElement('option');
var classCount = self.length;
var i = 0;
opt.innerHTML = metrics[index][0];
opt.value = metrics[index][1];
while (i < classCount) {
self[i].appendChild(opt);
i++;
}
index++;
}
}
window.onload=函数popGMetrics(){
var指数=0;
while(索引
document.getElementsByTagName('select')可能会帮助您获取要查找的get元素
还要注意,您正在重新填充while的每个迭代classCount
。移动:
var classCount=document.getElementsByClassName('GMetrics')。长度
在循环之前添加到将有助于保持其恒定值。问题在于您在外部循环中创建了一个
选项。因此,您可以将单个元素附加到每个选择项,这样可以在元素之间移动该元素。因此,它只出现在最后一个select
中,因为这是循环最后附加的位置
要解决这个问题,您需要在内部循环中创建一个新的选项
实例,以便为每个选择
创建一个新元素。试试这个:
let度量=[
['foo','bar'],
[‘嘶嘶声’、‘嗡嗡声’]
]
window.onload=函数popGMetrics(){
var指数=0;
while(索引
将有多个不同类别的下拉列表,它们将有单独的项目,因此我不能使用select标记@Anselm