使用 JavaScript 访问输入名称数组
Accessing input name array using JavaScript
我有以下HTML表单
<form action="#" method="post">
<table>
<tr>
<td><label>Product:<label> <input type="text" /></td>
<td><label>Price:<label> <input type="text" /></td>
<td><label>Quantity:<label> <input type="text"/></td>
<td><label>Amount:<label> <input type="text" name="amount[]"/></td>
</tr>
<tr>
<td><label>Product:<label> <input type="text" /></td>
<td><label>Price:<label> <input type="text" /></td>
<td><label>Quantity:<label> <input type="text"/></td>
<td><label>Amount:<label> <input type="text" name="amount[]"/></td>
</tr>
<!---only two rows have been created by the user -->
<input type="button" value="Add product" onClick="addProductRow()"/>
<input type="submit" value="Submit"/>
</table>
</form>
输入字段由用户动态创建(有用于向页面添加行的按钮)。当用户添加价格和数量时,金额(价格*数量)必须显示在相关金额字段中。
我的问题是,我如何使用JavaScript或jQuery访问每个金额字段以插入总金额。
提前谢谢你。
在这种情况下,
我要做的是使用 parentNode
直到您到达包含<tr>
,然后使用该表行节点搜索输入字段。
您还应该为每个字段添加一个 ID(数组名称如 quantityfields[]
和 pricefields[]
也可以),并使用标准document.getElementById("quantityfields[0]")
我也见过document.getElementsByName(name)
它将返回一个数组,您可以遍历该数组并执行自己的操作,并且您不必使用额外的 ID,但我认为getElementById
更常见。
使用jQuery(如果你没有id并且页面上只有一个表)
var total;
$("table").find("tr").each(function(index, elem){
total = total + parseInt($("td:eq(3) input", this).val());
});
相关文章:
- 将值输入到对象,然后该对象推送到数组
- 使用javascript搜索具有用户输入的数组
- 如何在用户输入时实例化数组
- 如何从客户端的数组中获取用户输入和返回值
- 数组在单个输入中返回
- ajax成功地将数组中的数据放入表中各自的输入中
- 数组输入不起作用
- 在 js 上获取数组输入的值
- 数组输入复选框上的“依赖”复选框
- 如何使用angularjs和PHP将数组输入值获取到数据库中
- 使用Javascript动态数组输入
- Javascript名称数组输入选择器(name[sometext])
- Vaildate动态添加数组输入-jQuery Validate
- 将PHP数组输入到Javascript数组/下拉列表中
- jQuery比较数组输入字段
- 如何使用proengsoft/ Laravel -jsvalidation和Laravel 5验证数组输入
- 如何在larvel5.0中使用数组输入的保存方法
- 如何验证数组输入angularjs
- 如何制作一个具有多维数组输入的函数,对其进行转换,并输出新的多维数组
- 通过jquery检查数组输入值中是否存在值