从具有id和name作为数组的输入中获取值(动态表单)

时间:2016-06-14 19:01:19

标签: javascript dynamic

我有一个带有JavaScript的动态表单:

row.insertCell(4).innerHTML= '<input type="text" name="precioUniArr[]" value = "'+precioUnitario+'">'

有没有办法通过JavaScript获取所有precioUniArr[]输入的值,以便得到一笔总和并有一个总数?

2 个答案:

答案 0 :(得分:2)

您使用document.getElementsByName("precioUniArr[]")。这将返回一个NodeList,它是一个类似于数组的对象,您可以循环以获取所有值。

var inputs = document.getElementsByName("precioUniArr[]");
var total = 0;
for (var i = 0; i < inputs.length; i++) {
    var value = parseFloat(inputs[i].value);
    if (!isNaN(value)) {
        total += value;
    }
}

答案 1 :(得分:0)

我相信您可能正在尝试使用Java或C方法来获取此信息。 JavaScript的工作方式略有不同,因为无论如何,输入字段总是会返回一串文本。

尝试为数组提供precioUniArr的简单ID。

当您需要获取内部数据时,假设它是逗号分隔的输入列表,请尝试此代码(它抓取输入字符串并按每个逗号将其拆分为数组):

inputArray = document.getElementById('precioUniArr').value.split(',');

这将存储由逗号分隔的字符串形成的数组作为数组inputArray。如果它是以空格分隔的列表,只需用空格替换代码中的逗号。