我一直在尝试创建一个“测验生成器”。
我有一个表格,您可以填写测验的答案选项,但在这里您也可以动态创建具有新 ID 的新字段。
因此它使用 id txtAnswer1、txtAnswer2 等创建新输入。
这是获取值的(不工作的)代码:
$("#AddNewQuiz").click(function () {
var NewQuizAlts = $("#txtAnswer").val();
var NewQuizQuestion = $("#NewQuizQuestion").val();
var init = {
'questions': [
{
'question': NewQuizQuestion,
'answersAlts': [NewQuizAlts,'Two','Three','Four'],
'correctAnswer': 1
}
]
}
你在这里看到它只获得静态的第一个值。但我想获得在“循环”或其他东西中创建的所有值。
有人有什么想法吗?
谢谢!
感谢您的回答!
但我无法让它工作!
我试过这个:
$('input[id^="txtAnswer"]').each(function(input){
var value = $('input[id^="txtAnswer"]').val();
var id = $('input[id^="txtAnswer"]').attr('id');
alert('id: ' + id + ' value:' + value);
});
但只给我最后一次创建的输入的警报(4次)。有什么问题?
事情是,这就是我想要实现的目标:
1.) 使用上面的代码获取所有创建的输入的列表。
2.) 将它们放在一个逗号分隔的列表中,其值如下:
QuestionAlts = [''+Alt1+'',''+Alt2+'',''+Alt3+''];
3.) 并且让它根据创建的输入数量在列表中生成更多备选方案,所以如果我创建了 5 个备选方案,它将是:
QuestionAlts = [''+Alt1+'',''+Alt2+'',''+Alt3+'',''+Alt4+'',''+Alt5+''];
我知道在这一切上寻求帮助是否很多,但有一点总比没有好:)
谢谢!