Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.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 - Fatal编程技术网

Javascript使用了错误的文本框

Javascript使用了错误的文本框,javascript,jquery,Javascript,Jquery,我正在尝试用Javascript进行计算。当我执行计算时,我可以看到脚本多次使用文本框 例如: 第一行的计算为: 100 + 20 = 120 第二行的计算为: 100 + 0 = 100 总数应为220 当我执行代码时,我总共得到了240 有人知道为什么我的脚本计算不正确吗 JSFiddle: 这是我的密码: $(文档)。在('change','id^=neg_pos')上,函数选择数量(selectedValue){ 设neg=0 设pos=0 $('[id^=neg_pos]')。每

我正在尝试用Javascript进行计算。当我执行计算时,我可以看到脚本多次使用文本框

例如:

第一行的计算为:

100 + 20 = 120
第二行的计算为:

100 + 0 = 100
总数应为220

当我执行代码时,我总共得到了240

有人知道为什么我的脚本计算不正确吗

JSFiddle:

这是我的密码:

$(文档)。在('change','id^=neg_pos')上,函数选择数量(selectedValue){
设neg=0
设pos=0
$('[id^=neg_pos]')。每个(函数(即,e){
变量数量=e.options[e.selectedIndex]。值;
如果(数量='0'){
}否则如果(数量=='1'){
var num1=Number(document.getElementsByName('price[])[0].value);
var num2=Number(document.getElementsByName('tax[])[0]。value);
var tv1=num1+num2;
pos+=tv1;
}否则{
var num3=Number(document.getElementsByName('price[])[0].value);
var num4=Number(document.getElementsByName('tax[])[0].value);
变量tv5=num3+num4;
neg+=tv5;
}
document.getElementById('positive')。value=pos.toFixed(2);
document.getElementById('negative')。value=neg.toFixed(2);
});
});

+
-


+ -

+ -



问题在于您正在使用
document.getElementsByName('price[])[0].value
获取输入值。但是该代码专门选择了第一个
price[]
元素,因此您总是使用相同的值

您需要将
[0]
替换为
[i]
,因为
i
对应于相关的
[id^=neg_pos]
项(from
$('[id^=neg_pos]')。每个(函数(i,e){


更新了位于的演示。问题是您正在使用
document.getElementsByName('price[])[0]。value
获取输入值。但是该代码专门选择了第一个
price[]
元素,因此您始终使用相同的值

您需要将
[0]
替换为
[i]
,因为
i
对应于相关的
[id^=neg_pos]
项(from
$('[id^=neg_pos]')。每个(函数(i,e){

更新的演示