2011-11-11 44 views
1

我有3个HTML表单输入字段,这些字段是由“添加更多”按钮动态生成的,命名的字段名称为fieldName, fieldName1, fieldName2, fieldName3,依此类推。如何使脚本正常工作?

现在,我正在尝试使用下面的脚本从JavaScript中检索此字段的值。

var bookingForm = document.forms['formName']; 

var qty = bookingForm.fieldName +'i'.value; 

与“我”是一个生成的数字编号由一个循环 当我使用alert(qty),则返回NaN,当我期待为fieldName1fieldName2值,依此类推。

但是,当我使用;

var qty = bookingForm.fieldName.value 

我可以在字段中的值,但得到NaN当我尝试来连接1,2,3,与字段名。

任何帮助将非常感激。

+5

这应该是对SO –

回答

1

您使用括号使用字符串来访问属性:

var qty = bookingForm['fieldName' + i].value; 
+0

我仍然有问题的脚本。 bookingForm ['fieldName'+ i] .value在一个循环内,给出未定义的错误。但是,当我尝试bookingForm ['fieldName'+'1']。值时,一切都按预期顺利进行,可能会对此负责? – sality63

+0

@ sality63:什么样的问题? – Guffa

+0

bookingForm ['fieldName'+ i] .value在循环中,给出未定义的错误。但是,当我尝试bookingForm ['fieldName'+'1']。值时,一切都按预期顺利进行,可能会对此负责? – sality63

1

不能使用如下代码:

var qty = bookingForm.fieldName +'i'.value; 

bookingForm.fieldName +'i'是一个字符串。您必须将该字符串更改为DOM元素才能访问.value参数。

1

尝试document.getElementsByName('fieldName'+i)[0].value