问问题
85 次
1 回答
1
小提琴
我相信我明白你想要什么。数据格式为courseNumber:something:something:prerequisite
. 当用户选择一个项目时,我们需要检查它是否具有先决条件,并将选择元素更改为该先决条件(加上警报)。
function displayRow(PreEvent) {
if (PreEvent == null || parseInt(PreEvent) === 0) return;
首先,我们应该清理我们的变量。它使代码混乱。
var selectElement = document.getElementById('thursevent');
var optionElements = selectElement.getElementsByTagName("option");
var prerequisite = PreEvent.split(':')[3];
如果先决条件是 0,我们可以节省一些工作,因为我们永远不会有课程 0。
if (parseInt(prerequisite) === 0) return;
我还在这里更改了变量名称,但最大的变化是我们将先决条件与每个选项的课程编号进行比较。请注意,我们正在检查索引 0 而不是 3,就像在您之前的代码中一样。我相信这是一个错误。
for (var opt, i = 0; opt = optionElements[i]; i++) {
var courseNumber = opt.value.split(':')[0];
if (prerequisite == courseNumber) {
alert("The course you selected has a pre-requested course. You must add that to your registration first.");
selectElement.selectedIndex = i;
}
}
于 2013-08-10T01:23:43.360 回答