我如何在JS中设置动态对象?

时间:2011-04-12 11:48:43

标签: javascript

我想通过js函数保留表单中的值 与document.getElementById("form1")
但在形式上有动态输入amount1,amount2等...(我不知道有多少 - 来自数据库)
我如何达到form1.amount(p)
当p是金额的指数时?
感谢

3 个答案:

答案 0 :(得分:1)

您可以像这样检索它:

 var frm = document.getElementById("form1");
 if (frm) {
     var valueA = frm["amount" + 1].value;
 }

更完整的例子:

<html>
    <form id="f1">
        <input name="input1" value="text" type="text" />
    </form>

    <script>
        var f = document.getElementById("f1");
        if(f)
        {
            alert(f["input"+1]);
            alert(f["input"+1].value);
        }
    </script>
</html>

答案 1 :(得分:0)

您可以使用“getElementsByTagName”获取表单的所有输入元素。像这样:

var form = document.getElementById("form1");
var inputs = form.getElementsByTagName("input");

这样,数组“inputs”包含表单中包含的所有输入元素。

答案 2 :(得分:0)

Ioannis几乎就在那里。要获取第i个金额输入的值,请使用:

var value = document.forms['form1'].elements['amount' + i].value;

更强大一点:

function getIthAmount(i) {
  var o = document.forms['form1'];
  o = o && o.elements['amount' + i];

  if (o) {
    return o.value;
  }
}