提示计算器jquery无法正常工作

时间:2015-01-28 00:25:55

标签: javascript jquery calculator

我正在尝试用jquery创建一个简单的小费计算器。当我按下提交按钮时,我收到一条说明NaN的javascript警报。不知道我做错了什么。我该如何解决?非常感谢。

<head>
<meta name="description" content="tip calculator" />
<meta name="keywords" content="tip, calculator" />
<meta charset="utf-8" />
<title>Tip Calculator</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="tipcalc.js"></script>
</head>
<body>
<div class="entries">
    Enter Bill Amount: <input type="text" /> <br><br>
    Enter Tip Percent: <input type="text" /> <br><br>
    <input type="button" value="Calculate Tip" id="submit" />
</div>
<script>
var total = $("#total").val();
var tip = $("#tip").val();
var amount = total + (tip / 100);
$("#submit").click(
function() {alert(amount);
});
</script>

2 个答案:

答案 0 :(得分:2)

请记住为输入设置ID标记:

<div class="entries">
    Enter Bill Amount: <input id="total" type="text" /> <br><br>
    Enter Tip Percent: <input id="tip" type="text" /> <br><br>
    <input type="button" value="Calculate Tip" id="submit" />
</div>

并使用parseFloat将值转换为数字:

$("#submit").click(function(){
   var total = parseFloat($("#total").val());
   var tip = parseFloat($("#tip").val());
   var amount = total + (tip / 100);
   alert(amount);
});

另外,请注意我将变量移动到事件处理程序的内部。

答案 1 :(得分:0)

你似乎没有id为“total”或“tip”的div,
替换:

Enter Bill Amount: <input type="text" /> <br><br>
Enter Tip Percent: <input type="text" /> <br><br>

使用:

Enter Bill Amount: <input type="text" id="total"/> <br><br>
Enter Tip Percent: <input type="text" id="tip"/> <br><br>