-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathevaluator.js
52 lines (50 loc) · 1.62 KB
/
evaluator.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
var flag = true;
var id = '';
function fillTr(elems, target) { // 给某一行的所有select赋值
var i;
for (i = 0; i < elems.length; ++i) {
elems[i].selectedIndex = target;
}
}
function evaluate() {
// 评价一位教师
try { // POST的时候运行函数会导致异常
var i;
var iframe = document.getElementById('iframeautoheight');
var iDoc = iframe.contentWindow || iframe.contentDocument; // iDoc是iframe中的document
if (iDoc.document) {
iDoc = iDoc.document;
}
var trs = iDoc.getElementById('divJs').getElementsByTagName('tr'); // 获取所有tr
var j = 1;
var selects = trs[j].getElementsByTagName('select'); // 获取第一行的所有select,因为有些课程不止一个教师
if (selects.length) {
fillTr(selects, 2);
} else {
++j;
selects = trs[j].getElementsByTagName('select'); // 有照片的时候情况很奇葩..
fillTr(selects, 2);
}
for (i = j + 1; i < trs.length; ++i) { // 遍历行,评价A
selects = trs[i].getElementsByTagName('select'); // 获取该行select
fillTr(selects, 1);
}
var submit = iDoc.getElementById('Button1'); // 获取按钮
submit.click(); // 提交请求
var course = iDoc.getElementById('pjkc'); // 获取评价课程select
if (course.selectedIndex === course.length - 1) { // 这是最后一个课程了!
flag = false;
}
} catch (e) { // 做静默处理
}
}
function checkFlag() {
if (!flag) {
clearInterval(id);
}
}
function evaluator() {
id = setInterval(evaluate, 50); // 0.05s刷一次
setInterval(checkFlag, 50);
}
evaluator(); // 调用函数