我正在为我的数学学生创建计算机生成的数学练习,并尝试与其他数学老师分享该策略。我遇到了一个奇怪的编程问题。问题在于我需要为列表框和文本框使用相同的 ID。两者都不会同时出现在应用程序中,当随机生成一个新问题时,一次只有一个。这是脚本文件的副本: https ://script.google.com/d/1GrswqbSU55vEzWD2V5dJyI95tBbFtNpn0OrnVK7FbbQVm5NpGvqhC_H5/edit?usp=sharing
这是存在错误的网络应用程序版本: https ://script.google.com/macros/s/AKfycbxfpZdZNNZWUU0KX-nicM27FtliatwCEkwOQ-bhTEu5LHLMDJo/exec
此代码来自生成问题功能:
else if(questionType == 4)
{
if (a==0){a=a+1;}
if (b==0){b=b+2;}
if (c==0){c=c+3;}
//Listbox input
var userInput = app.createListBox().addItem(a).addItem(eval(a-3)).setWidth(250).setStyleAttribute("fontSize", "24").setId('userInput').setName('userInput').setStyleAttribute('color', 'gray');
var correctAnswer = app.createTextBox().setName('correctAnswer').setId('correctAnswer');
var solution = eval(a-3);
correctAnswer.setValue(solution);
}
else if (questionType == 5)
{
if (a==0){a=a+1;}
if (b==0){b=b+2;}
if (c==0){c=c+3;}
//Textbox input
var userInput = app.createTextBox().setWidth(100).setStyleAttribute("fontSize", "24").setName('userInput').setStyleAttribute('color', 'gray').setValue('answer').setId('userInput');
var correctAnswer = app.createTextBox().setName('correctAnswer').setId('correctAnswer');
var solution = eval(a-c);
correctAnswer.setValue(solution);
}
当再次调用此函数以从应用程序中删除最后一个用户输入框时,我该怎么办?只有当创建的第二个问题与第一个问题的输入类型不同时,它才会给我一个错误。