我正在研究jQuery计算器。一切都很好,直到几分钟前,现在什么也都没有了。事故中我是不是意外地在代码中加了一个坏人物?我上下扫描了几次,但找不到来源。任何帮助将不胜感激!
目:
<script src="http://code.jquery.com/jquery.js"></script>
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
<link rel="stylesheet" type="text/css" href="css/style-calc.css">
<script src="js/bootstrap.min.js"></script>
jQuery的:
$(document).ready(function() {
alert("ready");
$('#salary, #transcribing-hours, #cost-of-assistant').keydown(function(e){
var key = e.which;
if (key != 8 && key != 9 && key != 37 && key != 38 && key != 39 && key != 40 && key != 46 && key != 110 && key != 190 && key != 13){
if (key < 48){
e.preventDefault();
}
else if (key > 57 && key < 96){
e.preventDefault();
}
else if (key > 105) {
e.preventDefault();
}
}
});
});
$('#salary').on('input', function() {
var salary = $('#salary').val();
var costofassist = $('#cost-of-assistant').val();
var total = salary / (52 * 40);
var roundtotal = Math.round(total * 100) / 100;
$('#hourly-pay-total').text(roundtotal);
});
$('#transcribing-hours').on('input', function() {
var hoursday = $('#transcribing-hours').val();
var hoursweek = hoursday * 5;
var hoursmonth = hoursweek * 4.3;
var hoursyear = hoursweek * 52;
$('#transcribing-year').text(Math.round(hoursyear * 100) / 100);
$('#transcribing-month').text(Math.round(hoursmonth * 100) / 100);
$('#transcribing-week').text(Math.round(hoursweek * 100) / 100);
var roundtotal = $('#hourly-pay-total').text();
var costwithoutyear = (hoursweek * roundtotal) * 52;
var costwithoutmonth = (hoursweek * roundtotal) * 4.3;
var costwithoutweek = hoursweek * roundtotal;
$('#cost-without-year').text(Math.round(costwithoutyear * 100) / 100);
$('#cost-without-month').text(Math.round(costwithoutmonth * 100) / 100);
$('#cost-without-week').text(Math.round(costwithoutweek * 100) / 100);
});
$('#cost-of-assistant').on('input', function() {
var costofassist = $('#cost-of-assistant').val();
var costwithoutyear = $('#cost-without-year').text();
var annualsavings = costwithoutyear - costofassist;
var monthlysavings = annualsavings / 12;
var weeklysavings = annualsavings / 52;
var dailysavings = annualsavings / 260;
$('#annual-savings').text((Math.round(annualsavings * 100) / 100);
$('#monthly-savings').text(Math.round(monthlysavings * 100) / 100);
$('#weekly-savings').text(Math.round(weeklysavings * 100) / 100);
$('#daily-savings').text(Math.round(dailysavings * 100) / 100);
});
答案 0 :(得分:4)
你的jQuery代码的第59行是一个开头括号太多了。
$('#annual-savings').text((Math.round(annualsavings * 100) / 100);
应该是:
$('#annual-savings').text(Math.round(annualsavings * 100) / 100);
提示:如果您使用例如Firefox或Safari,你有一个javascript控制台,它可以检测到这样的语法错误。
答案 1 :(得分:0)
我使用了firebug插件,我对它非常满意。在控制台选项卡中,它会显示语法错误,就像ok发现的那样。我使用的是mozilla,但我很确定Chrome也支持它。你应该试一试。