Вы не можете установить дочерние элементы для нескольких родителей.Поэтому создайте option
, а затем клонируйте его, используя cloneNode
, true
для глубокого копирования.
Для этой демонстрации localStorage
не будет работать, поэтому хардкодирование опции Также нет, если это массив, не используйте for ..in
для его циклического перебора.Используйте собственные for
методы цикла или массива, такие как forEach
let jsonObj = {
records: [{
name: 'A',
unique: '1'
}, {
name: 'B',
unique: '10'
}]
}
function addAssignee() {
let dropDown1 = document.getElementById("bugOwner");
let dropDown2 = document.getElementById("bugAssignee");
document.getElementById("bugOwner").options.length = 0;
document.getElementById("bugAssignee").options.length = 0;
let options = ''
for (let i = 0; i < jsonObj.records.length; i++) {
let option = document.createElement("option");
option.text = jsonObj.records[i].name;
option.value = jsonObj.records[i].unique;
let opt2 = option.cloneNode(true);
dropDown1.options.add(option);
dropDown2.options.add(opt2);
}
}
addAssignee()
<label for="bugOwner">Your Name</label>
<select class="form-control" id="bugOwner" name="bugOwner">
<option value="#">TODO Later</option>
</select>
<label for="bugAssignee">Bug Assignee</label>
<select class="form-control" id="bugAssignee" name="bugAssignee">
<option value="#">TODO Later</option>
</select>