javascript 101:增值税计算器不响应数据输入
我猜onload函数没有正确实现。输入数字或字母不会得到相应的错误或计算响应 这是我目前的代码:javascript 101:增值税计算器不响应数据输入,javascript,calculator,Javascript,Calculator,我猜onload函数没有正确实现。输入数字或字母不会得到相应的错误或计算响应 这是我目前的代码: var$=函数(id){ 返回文档.getElementById(id); } var calculateTaxAndTotals=函数(){ var taxRate=parseFloat($(“taxRate”).value);//税率,以百分比表示(例如8.5) var subTotal=parseFloat($(“itemPrice”).value);//项目价格,例如$5.95 $(“销售
var$=函数(id){
返回文档.getElementById(id);
}
var calculateTaxAndTotals=函数(){
var taxRate=parseFloat($(“taxRate”).value);//税率,以百分比表示(例如8.5)
var subTotal=parseFloat($(“itemPrice”).value);//项目价格,例如$5.95
$(“销售税”)。价值=”;
$(“totalItemCost”)。value=“”;
如果(isNaN(taxRate)| | taxRate存在两个问题
首先,JSFIDLE处理主html结构本身,因此不需要新的body
标记等
其次,这里的Javascript需要加载到头部或主体中(在JSFIDLE的左上角,您可以选择不同的加载位置)
最后,应该说,calculatexandtotals
的定义中有一些错误
if (isNaN(taxRate) || taxRate <= 0) {
document.taxCalc.taxRate.focus();
$("taxRateMessage").firstChild.nodeValue = "Please enter a valid value.";
} else if (isNaN(subTotal) || itemPrice <= 0) {
$("priceMessage").firstChild.nodeValue = "Please enter a valid value.";
} else {
var salesTax = subTotal * (taxRate / 100);
var totalItemCost = salesTax + itemPrice;
$("orderTotal").focus();
alert(totalItemCost);
}
if(isNaN(税率)| | taxRate您需要添加一些代码来链接到jsfiddle。此外,这让我们知道代码的哪些部分有问题。您从哪里获得这些代码的?它看起来像是来自某个教程……基本上,我正在读一本Murach的书。我可能在你们编辑jsfiddle时更改了jsfiddle。我现在不碰它了。是吗除了我在回答中更改的内容(即javascript),不需要更改任何其他内容。请查看我链接到的小提琴以查看其实际操作。如果需要,可以添加事件处理程序以在输入后自动计算,但这超出了问题的范围。
if (isNaN(taxRate) || taxRate <= 0) {
document.taxCalc.taxRate.focus();
$("taxRateMessage").firstChild.nodeValue = "Please enter a valid value.";
} else if (isNaN(subTotal) || itemPrice <= 0) {
$("priceMessage").firstChild.nodeValue = "Please enter a valid value.";
} else {
var salesTax = subTotal * (taxRate / 100);
var totalItemCost = salesTax + itemPrice;
$("orderTotal").focus();
alert(totalItemCost);
}