因此,我有一个 div(D1),它是从在不同 div(D2) 中声明的对象的字段动态填充的。那么是否可以在 D1 中有一个动态创建的按钮来修改 D1 中的放坡区域对象。
D2 中的对象:
var grades = new Array("88", "91", "75", "96");
var area1 = new GradingArea("Homework", 30, grades);
var area2 = new GradingArea("Classwork", 40, grades);
var gradingareas = new Array(area1, area2);
var course1 = new Course("CS1500", gradingareas, 85);
在 D1 中填充是由一个函数完成的,其中在 maincourse 中传递了参数,并且有一个 for 循环,基本上是 toString 用于成绩,最后将修改 D1 的 HTML 以包括:
function bringforward(maincourse){
for(var i = 0;i<maincourse.gradingareas.length; i++){
txt = "Accumulatedgrades" +"<button onclick=AddGrade(maincourse.gradingareas[i]);>" + "Add Grade" + "</button>"
}
document.getElementById("currentclassareas").innerHTML=txt; //current class areas is a paragraph tag
}
累积成绩只是一个占位符,代表在别处计算的字符串
AddGrade 调用一个警告框来输入一个新值以通过推送添加到 maincourse 对象中的数组中。但我总是得到“maincourse.gradingareas[i] 未定义”,因为我认为它不会与 div 中的书面声明保持一致。我曾尝试使用 addElement(button) 并仅用一个函数包装 AddGrade,但都没有成功。任何建议,将不胜感激