Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.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 根据价格将整笔钱分成几部分,并在jquery中显示余额_Javascript_Jquery - Fatal编程技术网

Javascript 根据价格将整笔钱分成几部分,并在jquery中显示余额

Javascript 根据价格将整笔钱分成几部分,并在jquery中显示余额,javascript,jquery,Javascript,Jquery,var paidamount=500; var金额=0; var余额=0; var列表=[]; $(“表tr”)。每个(函数(){ var$this=$(this); var price=$this.find('td:nth child(1)').text(); 如果(paidamount>=parseFloat(价格)){ paidamount-=parseFloat(价格); 支付金额=价格; 余额金额=0; }否则{ 支付金额=0; 余额金额=价格; } 列表.push({ 价格:价格,

var paidamount=500;
var金额=0;
var余额=0;
var列表=[];
$(“表tr”)。每个(函数(){
var$this=$(this);
var price=$this.find('td:nth child(1)').text();
如果(paidamount>=parseFloat(价格)){
paidamount-=parseFloat(价格);
支付金额=价格;
余额金额=0;
}否则{
支付金额=0;
余额金额=价格;
}
列表.push({
价格:价格,
已付金额:已付金额,
结余:结余金额
});
});
对于(变量i=0;i

300
190
150
150
150
150

我已更新了您的代码以解决问题。修复方法之一是删除
$(“table tbody”).empty()语句脱离for循环,只需运行一次。如果将其保留在for循环中,则每次迭代后都会清空表,并且只追加最后一行

其次,我简化了
$(“table tr”).each()函数中的逻辑。您应该将特定行的所有局部变量移动到此函数中,从逻辑上讲,这更有意义,因此您不必在每次迭代后重置它。逻辑很简单,您可以将
tempamunt
设置为等于
startingAmount
(500)减去行的价格。然后将
amountPaid
设置为等于
price
balanceAmount
设置为等于
0
。假设他们已经全额支付。然后检查
tempaument
是否仍然大于
0
,如果是,则其已正确全额支付,否则您没有足够的钱支付。在这种情况下,只需更新
已支付金额
以等于剩余金额,此时为
起始金额
,并更新
余额金额
以等于
价格
减去
起始金额
。最后将
startingAmount
设置为
0
,这样以后的所有迭代都将导致
else
语句运行

var启动金额=500;
var列表=[];
$(“表tr”)。每个(函数(){
var$this=$(this);
var price=parseFloat($this.find('td:nth child(1)').text());
var tempAmount=起始金额-价格;
var金额=价格;
var余额金额=0;
如果(tempAmount>0){
起始金额=临时金额;
}否则{
支付金额=启动金额;
余额金额=价格-起始金额;
启动量=0;
}
list.push({
价格:价格,
已付金额:已付金额,
余额:余额金额
});
});
$(“表tbody”).empty();
对于(变量i=0;i

300
190
150
150
150
150

愿它有所帮助!这很清楚让我在我的代码上试试给我一分钟