如何将 "selected" 属性动态添加到 javascript 中的 select 选项?

How to add "selected" attribute dynamically to select option in javascript?

我有一个 javascript 自动表单创建公式。我正在努力处理 select 列表中选项的“selected”属性。 我想要选项 selected 与 const c 匹配(在这种情况下,我想要选项“Formation”selected)。

我怎样才能做到这一点? 任何的想法 ?非常感谢来自法国!

const c = "Formation";                

const training_level = document.createElement('select');
training_level.setAttribute('value', c)
training_level.setAttribute('id', 'rec_mode')
training_level.required = true

var j = new Array("-- Type de diplôme --","Formation","Brevet","Bac","Bac +1"),    
var options = '';

for (var i = 0; i < j.length; i++) {
options += '<option value="' + j[i]+ '">' + j[i] + '</option>';
}

training_level.appendChild(options);

测试 c 的值是否与 j[i] 的值匹配。使用该条件的值填写 selected 属性:

for (var i = 0; i < j.length; i++) {
    var selected = (c == j[i]) ? "selected" : "";
    options += '<option value="' + j[i]+ '" selected="' + selected + '">' + j[i] + '</option>';
}

假设你有一个id为opt1的选项like

<option value="your_value" id="opt1">option text</option>

那你就可以了

document.getElementById('opt1').setAttribute('selected', 'selected')

P.S。这仅在您使用本机选择时有效。另一种选择是使用假选择