javascript - 文档未在循环内更新
问题描述
更新函数在包含选定选项数组的循环内不起作用。没有循环它正在工作,我已经检查过该数组是否包含正确的值。
html代码:
<div class="col-sm-4">
<select multiple class="form-control" id="studentcontainer">
</select>
</div>
JAVASCRIPT:
db.collection('Parent').get().then(snapshot => {
snapshot.forEach(doc => {
var data = '<option value="' + doc.data().uid + '">' + doc.data().student_name + " - " + doc.data().student_admno + '</option>';
document.getElementById('studentcontainer').innerHTML += data;
});
});
`
function assignStudent() {
var e = document.getElementById("driverscontainer");
var driverid = e.options[e.selectedIndex].value + "";
var selectedElement = document.getElementById('studentcontainer');
var selectedOptions = selectedElement.selectedOptions || [].filter.call(selectedElement.options, option => option.selected);
var selectedValues = [].map.call(selectedOptions, option => option.value);
for (index = 0; index < selectedValues.length; index++) {
console.log(selectedValues[index]);
var studentdriver = {
did : driverid,
sid : selectedValues[index]
}
db.collection("AssignedStudents").doc(driverid).set(studentdriver).then(function() {
alert("Student Assigned Successfully");
});
var docRef = firebase.firestore().collection("Parent").doc(selectedValues[index]).update({
isAssigned: true
});
}
alert("Students Assigned Successfully");
}
解决方案
推荐阅读
- go - 我需要做什么来执行具有如下“命名”导入的示例 golang 代码?
- javascript - Vue ChartJS 轴刻度
- javascript - 无法从本地ip访问服务器
- android - 如何侦听对等聊天集合并更新用户集合
- react-native - 带有复选框的平面列表无法切换
- python - 如何通过自己的输出更新函数的输入
- r - 尝试在 R 中将字符串转换为数据,在 `$<-.data.frame`(`*tmp*`, Date, value = numeric(0)) 中出现错误:替换有 0 行,数据有 500
- visual-studio-code - 在 VSCode 中选择代码块/段落的开头或结尾的命令
- interface - WFLYEJB0034:组件上的 EJB 调用失败
- mysql - LEFT OUTER JOIN 和 INNER JOIN 使总行数相等