Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对多个字段求和_Javascript_Jquery_Sum - Fatal编程技术网

Javascript 对多个字段求和

Javascript 对多个字段求和,javascript,jquery,sum,Javascript,Jquery,Sum,我再次遇到javascript问题,我想问一下如何从字段求和? 问题在哪里? 我正在尝试使用getElementsByName和getElementsById对所有字段求和。我想在下一个名为total的输入框中显示在小计输入框中输入的值的总和,而不刷新页面。 有人能帮我弄清楚吗。。? 这是我的密码 $(document).on('keyup','input',function()){ var num1=$(this).parents('tr:first').find('input:first'

我再次遇到javascript问题,我想问一下如何从字段求和? 问题在哪里? 我正在尝试使用
getElementsByName
getElementsById
对所有字段求和。我想在下一个名为total的输入框中显示在小计输入框中输入的值的总和,而不刷新页面。 有人能帮我弄清楚吗。。? 这是我的密码

$(document).on('keyup','input',function()){
var num1=$(this).parents('tr:first').find('input:first').val();
var num2=$(this).parents('tr:first').find('.input:last').val();
$(this).parents('tr:first').find('sub-total').val(to_rupiah(num1*num2));
var arr=document.getElementsByName('.sub-total');
var-tot=0;
对于(变量i=0;i

#
纳马巴朗
哈尔加
数量
小计
1.
巴里斯巴鲁(F7层)
总计:0
getElementsByName(“.sub-Total”)
查找具有
name=“.sub-Total”
的元素,但您没有,它是一个类。您可以使用
$(“.sub total”)
获取这些元素并在其上循环

document.getElementById('TotalBayar').value = tot;
无法工作,因为
TotalBayar
是一个DIV,
.value
仅对输入有效。使用
$(“#TotalBayar”).text(tot)
设置其内容

您也不能只对小计字段中的值调用
parseInt()
,因为它们以
Rp.
开头。我使用了一个正则表达式从值中提取数字

顺便说一句,您可以使用
.closest(“tr”)
而不是
.parents(“tr:first”)

$(document).on('keyup','input',function()){
var num1=$(this).closest('tr').find('input:first').val();
var num2=$(this.closest('tr').find('input:last').val();
$(this).closed('tr').find('sub-total').val(to_rupiah(num1*num2));
var arr=document.getElementsByName('.sub-total');
var-tot=0;
$(“.sub total”)。每个(函数(){
var val=parseInt($(this).val().match(/\d+/)[0]);
if(val){
tot+=val;
}
});
$('TotalBayar').text(tot);
});
$(文档).ready(函数(){
var指数=2;
$(“#addCF”)。单击(函数(){
$(“#自定义字段”).append(“”+索引+“”);
索引++;
});
$(“#customFields”)。在('click','.remCF',function()上{
$(this.parent().parent().remove();
});
});
对印尼盾(angka)的功能{
var rev=parseInt(angka,10).toString().split(“”).reverse().join(“”);
var rev2='';
对于(变量i=0;i

#
纳马巴朗
哈尔加
数量
小计
1.
巴里斯巴鲁(F7层)

总计:0
您没有任何
name=“.sub-Total”
,那么您希望
getElementsByName(“.sub-Total”)
返回什么?您有
class=“sub-Total”
,应该使用jQuery
$(“.sub-Total”).each()
来循环它们。