访问表单字段数组

时间:2012-07-04 12:05:42

标签: javascript html

我有以下表格:

<form name="quickAdd" action="" method="post" onsubmit="return quickAddProcess(this);">
    <input type="hidden" name="quickAddFields[module]" value="Products">
    <input type="text" name="quickAddFields[name]">
    <input type="checkbox" name="quickAddFields[toList]">
</form>

尝试从Chrome控制台访问它们时,我无法做到: document.quickAdd.quickAddFields == undefined;
document.quickAdd.quickAddFields.module == TypeError: Cannot read property 'module' of undefined

但是,PHP完美地检索了数组。

如何使用纯JavaScript访问这些字段?

更新

哦,document.getElementsByName('quickAddFields[module]);有效。为什么我无法通过Form对象访问它?

1 个答案:

答案 0 :(得分:2)

这有效:

document.quickAdd['quickAddFields[module]']

现场演示: http://jsfiddle.net/yWm3L/

表单元素的名称包含[]个字符。因此,您不能使用点符号(例如foo.bar)。相反,你必须使用下标 - 表示法(例如foo['bar'])。