Javascript 贷款计算器(jQuery)工作不正常

Javascript 贷款计算器(jQuery)工作不正常,javascript,jquery,Javascript,Jquery,我有一个使用JQuery、HTML和CSS构建的贷款计算器。功能正常。奇怪的是我必须刷新页面才能正确计算。我不确定我正在做(或没有做)正确的事情。希望得到一些反馈 $(文档).ready(函数(){ //变数 var金额=$('#loanAmount').val(); var yearlyInterestRate=.12; var MonthlyInterestate=年利率/12; var-twevelmon=12; 第十八个变量=18; var twentyFourMon=24; var

我有一个使用JQuery、HTML和CSS构建的贷款计算器。功能正常。奇怪的是我必须刷新页面才能正确计算。我不确定我正在做(或没有做)正确的事情。希望得到一些反馈

$(文档).ready(函数(){
//变数
var金额=$('#loanAmount').val();
var yearlyInterestRate=.12;
var MonthlyInterestate=年利率/12;
var-twevelmon=12;
第十八个变量=18;
var twentyFourMon=24;
var duration=$('input[name=duration]:checked').val();
var calcButton=$('.calculate');
var resetButton=$('.reset');
var monthPay;
$('.results').addClass('hidden');
//计算每月付款
calcButton.单击(函数(事件){
event.preventDefault();
monthPay=(MonthlyInterestate*金额)/[1-数学功率((1+MonthlyInterestate),-持续时间)];
$('.durationValue')。文本(持续时间);
$('.monthlyPayment').text(Math.round(monthPay));
$('.results').removeClass('hidden');
});
重置按钮。单击(函数(){
$(form.reset();
});
})


选择您的付款期限:
12个月
18个月
24个月
算计

您选择了一个月的期限,并且您的每月付款为美元,年利率为12%


您需要将变量放入使用它们的函数中

PS:在表单中,
input type=“reset”/>
将在不需要脚本的情况下重置表单

$(文档).ready(函数(){
$('.results').addClass('hidden');
var yearlyInterestRate=.12;
var MonthlyInterestate=年利率/12;
var-twevelmon=12;
第十八个变量=18;
var twentyFourMon=24;
//计算每月付款
$('.calculate')。在(“单击”上,函数(事件){
event.preventDefault();
var金额=$('#loanAmount').val();
var duration=$('input[name=duration]:checked').val();
var monthPay=(MonthlyInterestate*金额)/[1-数学功率((1+MonthlyInterestate),-持续时间)];
$('.durationValue')。文本(持续时间);
$('.monthlyPayment').text(Math.round(monthPay));
$('.results').removeClass('hidden');
});
$('.reset')。打开(“单击”,函数(){
$(form.reset();
});
})


选择您的付款期限:
12个月
18个月
24个月
算计

您选择了一个月的期限,并且您的每月付款为美元,年利率为12%


您需要将变量放入使用它们的函数中

PS:在表单中,
input type=“reset”/>
将在不需要脚本的情况下重置表单

$(文档).ready(函数(){
$('.results').addClass('hidden');
var yearlyInterestRate=.12;
var MonthlyInterestate=年利率/12;
var-twevelmon=12;
第十八个变量=18;
var twentyFourMon=24;
//计算每月付款
$('.calculate')。在(“单击”上,函数(事件){
event.preventDefault();
var金额=$('#loanAmount').val();
var duration=$('input[name=duration]:checked').val();
var monthPay=(MonthlyInterestate*金额)/[1-数学功率((1+MonthlyInterestate),-持续时间)];
$('.durationValue')。文本(持续时间);
$('.monthlyPayment').text(Math.round(monthPay));
$('.results').removeClass('hidden');
});
$('.reset')。打开(“单击”,函数(){
$(form.reset();
});
})


选择您的付款期限:
12个月
18个月
24个月
算计

您选择了一个月的期限,并且您的每月付款为美元,年利率为12%


在pageload(文档准备就绪)上获取持续时间和金额的值。如果您通过填充值来更新这些值,那么变量将不会得到更新


move
var amount=$('#loanAmount').val()
var duration=$('input[name=duration]:checked').val()编码到“onClick”处理程序中,以便在单击后更新金额和持续时间。

在页面加载时获取持续时间和金额的值(文档就绪)。如果您通过填充值来更新这些值,那么变量将不会得到更新


move
var amount=$('#loanAmount').val()
var duration=$('input[name=duration]:checked').val()编码到“onClick”处理程序中,以便在单击后更新金额和持续时间。

您正在
document.ready()
上设置值-因此甚至在单击radio中的任何示例之前。将获取值移动到
函数中。单击()


从不推荐的
.click()
方法切换到
.on('click',function(){})
更有效,以防将来扩展表单

您要在
document.ready()
上设置值,所以甚至在单击收音机中的任何示例之前。将获取值移动到
函数中。单击()


从不推荐的
.click()
方法切换到
.on('click',function(){})
更有效,以防将来扩展表单

问题1是不生成代码片段,以便我们可以看到它的实际操作。我给你做了一个。问题2是只有在页面加载时才能获取值。放入
var amount=$('#loanAmount').val()etc。您需要为每次单击提取它们。问题1是不制作代码片段,以便我们可以看到它的实际操作。我给你做了一个。问题2是只有在页面加载时才能获取值。放入
var amount=$('#loanAmount').val()etc。您需要为每次单击都获取它们—无需通过设置另一个处理程序来移动它—只有在触发整个计算时才获取值更有效。。。A.