2013-10-10 68 views
0

我的工作。我正在通过第一个示例创建Sales Tax应用程序。销售税申请未计算营业税

这里是我的小提琴,让我知道我做错了:

http://jsfiddle.net/chrisjamez/2vjqc/1/

HTML

<!DOCTYPE html> 
<HTML> 

    <HEAD> 
     <TITLE>Sales Tax Calculator</TITLE> 
     <link rel="stylesheet" type="tect/css" href="sales_tax.css" /> 
     <script type="text/javascript" src="sales_tax.js"></script> 
    </HEAD> 

    <BODY> 
     <DIV id="content"> 
      <h1>Sales Tax Calculator</h1> 

      <p>Enter the values below and click "Calculate".</p> 
      <div id="taxCalc"> 
       <label for="subtotal">Subtotal:</label> 
       <input type="text" id="subtotal" /> 
       <br/> 
       <label for="taxRate">Tax Rate:</label> 
       <input type="text" id="taxRate" />% 
       <br/> 
       <label for="salesTax">Sales Tax:</label> 
       <input type="text" id="salesTax" disabled="disabled" /> 
       <br/> 
       <label for="total">Total:</label> 
       <input type="text" id="total" disabled="disabled" /> 
       <br/> 
       <label>&nbsp;</label> 
       <input type="button" id="calculate" value="Calculate" /> 
       <br/> 
      </div> 
     </DIV> 
    </BODY> 

</HTML> 

CSS

body { 
    font-family: Arial, Helvetica, sans-serif; 
    background: #333366; 
} 
#content { 
    width: 450px; 
    margin: 10px auto; 
    padding: 5px 20px; 
    background: white; 
    border: thin solid black; 
} 
#salesTax, #total { 
    color: black; 
} 
#taxCalc label { 
    display: block; 
    width: 6em; 
    text-align: right; 
    padding-right: lem; 
    float: left; 
} 
#taxCalc input { 
    display: block; 
    float: left; 
} 
#taxCalc br { 
    clear: left; 
} 

的JavaScript

var $ = function (id) { 
    return document.getElementById(id); 
} 

var calculate_click = function() { 
    var subtotal = parseFloat($("subtotal").value); 
    var taxRate = parseFloat($("taxRate").value); 

    $("salesTax").value = ""; 
    $("total").value = ""; 

    if (isNaN(subtotal) || subtotal < 0) { 
     alert("Subtotal must be a number that is zero or more!"); 
    } else if (isNan(taxRate) || taxRate < 0) { 
     alert("Tax Rate must be a number that is zero or more!"); 
    } else { 
     var salesTax = subtotal * (taxRate/100); 
     salesTax = parseFloat(salesTax.toFixed(2)); 
     var total = subtotal + salesTax; 
     $("salesTax").value = salesTax; 
     $("total").value = total.toFixed(2); 
    } 
} 

window.onload = function() { 
    $("calculate").onclick = calculate_click; 
    $("subtotal").focus(); 
} 
+0

页脚本认为首先要包括的文件是jsfiddles服务器上,就像sales_tax.js – Adam

回答

0

有几个与你的代码的问题:

(1)的jsfiddle,你已经使用window.onload所以在左窗格中你不需要指定的onload,只是在头部或身体包装代码将做。此外,没有必要列入htmlhead和所有的东西里面的jsfiddle时。

(2)isNan不是一个函数。使用isNaN

更改此:else if (isNan(taxRate) || taxRate < 0)

到:else if (isNaN(taxRate) || taxRate < 0)

检查该更新的提琴:http://jsfiddle.net/2vjqc/4/

+0

感谢您的您的指示清晰。 –

0

不是最好的答案,但我在我的小提琴固定代码

http://jsfiddle.net/2vjqc/9/

var $ = function (id) { 
    return document.getElementById(id); 
} 

var calculate_click = function() { 
    var subtotal = parseFloat($("subtotal").value); 
    var taxRate = parseFloat($("taxRate").value); 

    $("salesTax").value = ""; 
    $("total").value = ""; 

    if (isNaN(subtotal) || subtotal < 0) { 
     alert("Subtotal must be a number that is zero or more!"); 
    } else if (isNaN(taxRate) || taxRate < 0) { 
     alert("Tax Rate must be a number that is zero or more!"); 
    } else { 
     var salesTax = subtotal * (taxRate/100); 
     salesTax = parseFloat(salesTax.toFixed(2)); 
     var total = subtotal + salesTax; 
     $("salesTax").value = salesTax; 
     $("total").value = total.toFixed(2); 
    } 
} 
$("calculate").onclick = function(){calculate_click();}; 
$("subtotal").focus();