当输入被更改时,我试图通过Javascript函数访问表单数据'。 目前我使用的是这样的东西:
<form>
<input type="radio" name="type" name="myValue" onchange="myFunction(this.form)>
</form>
<script>
function myFunction(form) {
var value = form.type.value;
}
</script>
然而它起作用,而不是写
var value = form.type.value;
我需要写这样的东西
var myArray = ["type"];
var value = form.myArray[0].value;
哪个不行。这是由于如何处理数组中的值? 如果有用的话,我在JSFiddle上有here 感谢
答案 0 :(得分:2)
尝试
var value = form[myArray[0]].value;
form.myArray[0]
首先从表单获取成员myArray,然后尝试获取第一个项目。等于(form.myArray)[0]
form[myArray[0]]
明确表示从表单中获取成员,该表单是myArray[0]
答案 1 :(得分:0)
您可以使用[]
访问对象的属性,如下所示:
var value = form["type"].value;
// equivalent to:
var value = form.type.value
在你的情况下,这应该有效:
var myArray = ["type"];
var value = form[myArray[0]].value;
答案 2 :(得分:0)
&#39; myArray的&#39;声明为局部变量,但它不是表单的属性。 所以form.myArray会失败。