let selects = document.getElementsByTagName("select");
if (selects.length !== selectAnswer.length) {
layer.msg("页面上的题可能已经发生了变化", { icon: 0 });
return;
}
let lastScope = NaN;
let idx = -1;
// 获取Angular作用域
selectAnswer.forEach((answer, index) => {
let scope = angular.element(selects[index]).scope();
// console.log(scope.subject.sub_subjects);
// console.log(lastScope === scope, lastScope);
if (idx === -1) {
idx = 0;
} else if (lastScope === scope) {
idx += 1;
} else {
idx = 0;
}
lastScope = scope;
//angular.element(document.getElementsByTagName("select")[0]).scope().subject.sub_subjects;
scope.$apply(() => {
console.log(scope.subject.sub_subjects[idx]);
let old = scope.subject.sub_subjects[idx].answeredOption;
scope.subject.sub_subjects[idx].answeredOption = answer;
scope.onChangeSubmission(scope.subject.sub_subjects[idx]);
console.log(scope.subject.sub_subjects[idx]);
console.log(
`old: ${old},new:${answer}, now:${scope.subject.sub_subjects[idx].answeredOption}`,
);
});
$(selects[index]).multiselect("refresh");
angular.element(selects[index]).triggerHandler("change");
});