最亲爱的stackoverflow朋友,
我正在创建一个在线 html 表单,并创建了一个 javascript 函数来动态地(不完全确定我是否正确使用了这个词)在选择选项时在表单底部显示会员费总额。总费用取决于会员类型、国家和付款方式。当我计算的只是会员类型和根据国家/地区的邮资时,它工作得很好(我对这两个选项使用了下拉表格)。现在我想将第三项添加到等式(付款方式 - 可以选择支票或贝宝),但我无法让它工作。这次我使用单选按钮。
我的总计函数是这样的(没有“+ getPaypalfee()”它工作得很好):
function getAmountDue()
{
var amountDue = getMembershipPrice() + getExtraPostagePrice() + getPaypalfee();
document.getElementById('amountDue').innerHTML ="Amount Due: $"+amountDue;
}
我写的用于返回贝宝费用的 javascript 是这样的(它变得非常复杂,我不确定我哪里出错了以及如何重新启动!):
var paymentmethod_Fee = new Array();
paymentmethod_Fee["cheque"]=0;
paymentmethod_Fee["paypal"]=2;
function getPaypalfee()
{
var paypalFee=0;
for (var i=0; i < document.membershipform.payment_method.length; i++)
{
if (document.membershipform.payment_method[i].checked)
{
var selectedPaymentmethod = document.membershipform.payment_method[i].value;
}
}
paypalFee = paymentmethod_Fee[selectedPaymentmethod.value];
return paypalFee;
}
单选按钮的 html 如下所示:
<p>I will make payment via: <BR>
<input type="radio" id="payment_method" name="payment_method" value="cheque" checked="yes" onchange="getAmountDue()">Cheque
<input type="radio" id="payment_method" name="payment_method" value="paypal" onchange="getAmountDue()">Paypal (Add $2)
非常感谢对我的逻辑缺陷的任何见解!我是 javascript 新手,单选按钮似乎是我的克星(我想学习如何使用它们,而不是用下拉菜单或我已经知道如何做的事情来替换它们)。
谢谢!