jquery 动态添加与统计 实现代码
(一)创建克隆单元格对象并添加到表格中
var v=$("#tbin");//得到表格的jquery对象
//所有的数据行有一个.myrow的class,得到数据行的大小
var vcount=$("#tbin tr").filter(".myrow").size()+1;//表格有多少个数据行
var vtr=$("#tbin #trdatarow1"); //得到表格中的第一行数据
var vtrclone=vtr.clone(true);//创建第一行的副本对象vtrclone
vtrclone.appendto(v);//把副本单元格对象添加到表格下方
(三)计费重量变化时计算费用,并统计总费用
$("#txtmoneyweight").bind("change", function()
{
var vtotalmoney=0;//总金额的初始值为0;
var vtxtdetail=$(this);//得到变化的文本框对象
var vval=vtxtdetail.val();
var vtxtafter=vtxtdetail.parent("td").parent("tr").find("#txtrate");//得到费率;
var vtxtmoney=vtxtdetail.parent("td").parent("tr").find("#txtmoney");//得到费用;
var vmoney=calculatormoney(vval,vtxtafter.val());//使用公式计算单行运费
vtxtmoney.val(vmoney); //显示单行运费信息
updatetotal(); //调用函数统计更新总费用
}); //变化脚本结束
(二)统计更新总金额
function updatetotal()//更新总金额
{
var vtotalmoney=0;//总金额的初始值为0;
var vtable=$("#tbin");//得到表格的jquery对象
var vtotal= vtable.find("#txttotal") ;//得到总金额对象
var vtxtafters=vtable.find("#txtmoney");//得到所有计算好的费用对象;
vtxtafters.each( //使用jquery的each函数遍历每行费用对象,累加成总金额
function(i)
{
var vtempvalue=$(this).val();
if(vtempvalue=="")
{
vtempvalue=0;
}
vtotalmoney=vtotalmoney+parsefloat(vtempvalue);//计算总费用
}
)//遍历结束
vtotal.val(vtotalmoney); //将总费用显示到对应文本框对象中
}