添加表单Javascript的总数

添加表单Javascript的总数,javascript,Javascript,我一直在写这张表格,无法通过计算总数。我完全不知道如何把这些加起来并显示在盒子里。有人能帮忙吗 这是我的名片 var gc\u fSandwichPrice=5.99;//每个三明治的价格 var gc_fExtrasPrice=1.50;//每件额外物品的价格 //全局变量 //全局对象变量 var潜水员; var-radSandwich; 变桨半径; var chkExtras; //其他全球变量 总风险; var g_sSandwich; 变量g_sSize; var g_sExtras

我一直在写这张表格,无法通过计算总数。我完全不知道如何把这些加起来并显示在盒子里。有人能帮忙吗

这是我的名片

var gc\u fSandwichPrice=5.99;//每个三明治的价格
var gc_fExtrasPrice=1.50;//每件额外物品的价格
//全局变量
//全局对象变量
var潜水员;
var-radSandwich;
变桨半径;
var chkExtras;
//其他全球变量
总风险;
var g_sSandwich;
变量g_sSize;
var g_sExtras;
addEventListener('load',Init);
函数Init(){
document.getElementById(“h1Title”).innerHTML=“脏熟食1.0”;
var spanExtrasPrice=document.getElementById(“spanExtrasPrice”);
var btnCalculateTotal=document.getElementById(“btnCalculateTotal”);
diverors=document.getElementById(“diverors”);
radSandwich=document.getElementsByName('radSandwich');
radSize=document.getElementsByName('radSize');
chkExtras=document.getElementsByName('chkExtras');
spanExtrasPrice.innerHTML=gc_fExtrasPrice.toFixed(2);
btnCalculateTotal.addEventListener('click',CalculateTotal');
}//函数Init()
函数计算器总计(){
diverors.innerHTML='';
如果(radSandwich[0]。已选中){
g_sSandwich=radSandwich[0]。值;
}else if(radSandwich[1]。选中){
g_sSandwich=radSandwich[1]。数值;
}else if(radSandwich[2]。选中){
g_sSandwich=radSandwich[2]。数值;
}else if(radSandwich[3]。已选中){
g_sSandwich=radSandwich[3]。数值;
}否则{
diverors.innerHTML=“选择三明治”;
返回;
}
如果(radSize[0]。已选中){
g_fTotal=radSize[0]。标题;
}else if(radSize[1]。已选中){
g_fTotal=radSize[1]。标题;
}否则如果(radSize[2]。已选中){
g_fTotal=radSize[2]。标题;
}否则{
diverors.innerHTML=“请选择尺寸”;
返回;
}
如果(chkExtras[0]。已选中){
g_sExtras=chkExtras[0]。值;
总价格=总价格+总价格;
}
if(chkExtras[1]。选中){
g_sExtras=g_sExtras+','+chkExtras[1]。值;
g_fTotal=g_fTotal+gc_fExtrasPrice;}
if(chkExtras[2]。选中){
g_sExtras=g_sExtras+','+chkExtras[2]。值;
总价格=总价格+总价格;
}
var textTotal=document.getElementById('textTotal');
textTotal.value=g_fTotal;
}//函数CalculateTotal
函数ProcessOrder(){
}//函数ProcessOrder
*{
保证金:0;
填充:0;
}
身体{
背景色:#333;
}
#除草器{
背景色:#efe;
宽度:40em;
边框:纯黑;
边界半径:0 0 20px 20px;
边框宽度:0 1px 1px 1px;
保证金:0自动;
填料:2米1米;
}
氢{
字体:斜体;
字体大小:1.3em;
颜色:#666;
边际上限:0px;
}
输入{
右边距:0.3em;
}
h3,p{
保证金:0.5em0;
}
潜水艇{
字体大小:110%;
颜色:白色;
背景:#f00;
边缘底部:0.5em;
}
#部门支付信息{
利润率:10px 0 20px 0;
垫底:10px;
边框:纯黑;
边框宽度:1px0;
}
#DivCardinfo{
字体大小:.8em;
可见性:隐藏;
左边距:1米;
显示:内联;
}
#分类{
背景:白色;
最小高度:10em;
宽度:25em;
边框:1px纯黑;
保证金:0.5em0;
填充:10px;
}

熟食店表格
第一部分
三明治
鸡胸肉
羊腿
火腿里脊
ReelMeat®

大小 男子汉 少女男子 超级娘娘腔男人

额外费用(每个) 油炸垃圾邮件
趾甲
秘汁


总数:

第二部分 客户名称:

支付: 现金 检查 信用卡 卡号: 月:年: 2012 2013 2014 2015 2016 2017 2018
您必须在“Init”之后添加括号

window.addEventListener('load', Init());
而且在CalculateTotal函数的末尾也有一个输入错误。 下面是一个工作示例:
您的javascript中有一个输入错误。您正试图获取id为
textTotal
的html元素,而您感兴趣的字段实际上被赋予了id
txtTotal

修正那个打字错误,它就会起作用

var textTotal = document.getElementById('textTotal');
你的选择器错了。文本框的元素id是
txtotal

因此,以下措施应该有效:

var textTotal = document.getElementById('txtTotal');

这是您的JSFIDLE的固定副本:

我修正的是:

  • 您正在传入
    $
    以及您试图添加为浮动的值。将它们从标题值中删除,并仅在计算总数后将其放回
  • 放入parseFloat,以便可以将值添加到一起,而不是作为字符串连接
  • 初始化您的
    g_fTotal
    chkExtras
    变量
  • 进行一些基本检查,以便
    radSize
    未选中时不会导致问题

否,在Init之后添加参数只会调用Init函数并将结果(未定义)传递给addEventListener。addEventListener接受事件名称和回调(函数对象)。