如何在更新表单值时使用变量名?

Javascript: How can I use a variable name when updating a form value?

本文关键字:变量名 更新 表单      更新时间:2023-09-26

下面是函数的一部分:

function updateResponse(question, answer) {
    questionId = 'q'+question;
    document.forms[0].questionId.value = answer;

用如下方式调用函数:

<td onClick='javascript:updateResponse(1, 1);'>

我希望它更新的表单元素看起来像:

<input type='hidden' name='q1' value='' />

使用Firefox web控制台,我得到:

TypeError: document.forms[0].questionId is undefined

谢谢!

更新:发现这个经过大量的谷歌搜索和它的工作。似乎还有一种更优雅的方式来实现这一点?

eval('"document.forms[0].'"+questionId+'".value = answer;'");

如果你确定表单中有一个名称为questionId:

的输入

document.forms[0][questionId].value

你应该使用var来避免全局变量:

var questionId = 'q' + question;