Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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在HTML表中进行计算?_Javascript_Jquery_Html - Fatal编程技术网

如何在制作动态发票时使用JavaScript在HTML表中进行计算?

如何在制作动态发票时使用JavaScript在HTML表中进行计算?,javascript,jquery,html,Javascript,Jquery,Html,我想在输入数量、成本和折扣字段后获得计算的总金额。 使用onchange有效吗?或者我应该怎么做 函数计算价格(costElement、qtyElement、discElement、priceElement){ priceElement.value=qtyElement.value*costElement.value-((disceElement.value*qtyElement.value*costElement.value)/100); } 函数myfunction(){ var tabl

我想在输入数量、成本和折扣字段后获得计算的总金额。
使用
onchange
有效吗?或者我应该怎么做

函数计算价格(costElement、qtyElement、discElement、priceElement){
priceElement.value=qtyElement.value*costElement.value-((disceElement.value*qtyElement.value*costElement.value)/100);
}
函数myfunction(){
var table=document.getElementById(“mytable”);
//添加行
var row=table.insertRow(table.rows.length);
var cell1=行插入单元格(0);
var cell2=行插入单元格(1);
var cell3=行插入单元格(2);
var cell4=行插入单元格(3);
var cell5=行插入单元格(4);
var cell6=行插入单元格(5);
//添加行和值
var objInputCheckBox=document.createElement(“输入”);
objInputCheckBox.type=“checkbox”;
单元格1.appendChild(objInputCheckBox);
var ele2=document.createElement('input');
ele2.setAttribute('type','text');
ele2.setAttribute('值','');
细胞2.附属子(ele2);
//成本
var ele3=document.createElement('input');
ele3.setAttribute('type','text');
ele3.setAttribute('值','');
ele3.onchange=函数(){
calculatePrice(this.parentElement.parentElement.childNodes[2].childNodes[0],this,this,this.parentElement.parentElement.childNodes[5].childNodes[0]);
};
细胞3.附属物子(ele3);
//数量
var ele4=document.createElement('input');
ele4.setAttribute('type','text');
ele4.setAttribute('值','');
ele4.onchange=函数(){
calculatePrice(this,this.parentElement.parentElement.childNodes[3].childNodes[0],this,this.parentElement.parentElement.childNodes[5].childNodes[0]);
};
细胞4.附肢子细胞(ele4);
//折扣
var ele5=document.createElement('input');
ele5.setAttribute('type','text');
ele5.setAttribute('值','');
ele5.onchange=函数(){
calculatePrice(this,this,this.parentElement.parentElement.childNodes[4].childNodes[0],this.parentElement.parentElement.childNodes[5].childNodes[0]);
};	
细胞5.附肢子细胞(ele5);
var ele6=document.createElement('input');
ele6.setAttribute('type','text');
ele6.setAttribute('值','');
细胞6.附肢子细胞(ele6);
}
函数delrow(id){
var table=document.getElementById(id);
var rowcount=table.rows.length;

对于(var i=0;i我将使用
.onkeyup
获得更具响应性的反馈,然后添加一个处理程序,该处理程序将传递给您创建的行,如下所示:

函数计算成本(行){
返回函数(){
row.total.value=row.cost.value*row.qty.value*row.discount.value
}
}
函数myfunction(){
var table=document.getElementById(“mytable”);
//添加行
var row=table.insertRow(table.rows.length);
var cell1=行插入单元格(0);
var cell2=行插入单元格(1);
var cell3=行插入单元格(2);
var cell4=行插入单元格(3);
var cell5=行插入单元格(4);
var cell6=行插入单元格(5);
//添加行和值
var objInputCheckBox=document.createElement(“输入”);
objInputCheckBox.type=“checkbox”;
单元格1.appendChild(objInputCheckBox);
//项目
var ele2=document.createElement('input');
ele2.setAttribute('type','text');
ele2.setAttribute('值','');
细胞2.附属子(ele2);
//成本
var ele3=document.createElement('input');
ele3.setAttribute('type','text');
ele3.setAttribute('值','');
细胞3.附属物子(ele3);
//数量
var ele4=document.createElement('input');
ele4.setAttribute('type','text');
ele4.setAttribute('值','');
细胞4.附肢子细胞(ele4);
//折扣
var ele5=document.createElement('input');
ele5.setAttribute('type','text');
ele5.setAttribute('值','');
细胞5.附肢子细胞(ele5);
//总数
var ele6=document.createElement('input');
ele6.setAttribute('type','text');
ele6.setAttribute('值','');
细胞6.附肢子细胞(ele6);
变量行={
项目:第2条,
费用:ele3,
数量:ele4,
折扣:ele5,
总数:6
}
var updateCostHandler=calculateCost(行);
row.cost.onkeyup=updateCostHandler;
row.qty.onkeyup=UPDATECOSTCHANDLER;
row.discount.onkeyup=updateCostHandler;
}
函数delrow(id){
var table=document.getElementById(id);
var rowcount=table.rows.length;
对于(变量i=0;i

桌子
表,td{
边框:1px纯黑;
}
项目
成本
量
优惠
全部的
添加
删除

我会使用
.onkeyup
来获得更具响应性的反馈,然后添加一个处理程序,该处理程序被传递给您创建的行,如下所示:

函数计算成本(行){
返回函数(){
row.total.value=row.cost.value*row.qty.value*row.discount.value
}
}
函数myfunction(){
var table=document.getElementById(“mytable”);
//添加行
var row=table.insertRow(table.rows.length);
var cell1=行插入单元格(0);
var cell2=行插入单元格(1);
var cell3=行插入单元格(2);
var cell4=行中的