2012-11-03 34 views
0

我已经创建了一个简单的购物车总计算器与JS(超级简单的订单),但我不能让JS代码在实时浏览器中工作,但它的工作原理我的编辑(Coda 2)。代码:js代码在编辑器中工作,但不在现场

function CalcTotal() 
{ 

var quantity = eval(document.bookorderform.bookqty.value); 
if (quantity == undefined) {quantity = 0} 
var orderTotal = eval(quantity * 14.99) + (3.99); 
document.bookorderform.total.value=orderTotal; 

} 

测试现场环境是: http://leapingbutterfly.org/bookorder.php

*我没有定型或有PHP代码完呢,但是这不应该与JS代码被干扰。

我已经检查double和tripple以确保代码与我的开发环境中的代码相同,我的表单变量也会计算它们各自的js变量。唯一我能想到的是,如果我没有正确地调用文档,但是我之前没有问题地调用过这样的文档。任何帮助是极大的赞赏!

回答

0

input元素有一个无效的属性:

<td>$<input form="bookorderform" type="text" name="total" id="total" size="5" /></td> 

如果删除form="bookorderform",它应该工作的罚款。

此外,您不应该在您的代码中使用eval。只需使用parseInt

function CalcTotal() { 
    var quantity = parseInt(document.bookorderform.bookqty.value, 10); 

    if (isNaN(quantity)) { 
     quantity = 0; 
    } 

    var orderTotal = quantity * 14.99 + 3.99; 
    document.bookorderform.total.value = orderTotal.toFixed(2); 
} 
+0

谢谢!像魅力一样工作! *我从w3c网站和标准中获得了eval的东西......你能解释为什么使用parseInt更好吗? – XIPE

相关问题