2010-08-26 73 views
1

我:皮棉警告,VAL()和text()被稱爲不正確

TotalPrice = parseInt(TotalPrice*100)/100; 
$('input[name=EstimatedPrice]').val(TotalPrice); 
$('#EstimatedPriceDisplay').text(TotalPrice); 

,我正從皮棉兩次警告。

  1. VAL()稱爲不正確

  2. 文本()稱爲不正確。

我能夠消除文本()呼籲通過執行以下操作不正確的錯誤:

$('#EstimatedPriceDisplay').text('' + TotalPrice); 

,但似乎有點缺憾給我。

回答

1

你想支持IE < 5.5?如果沒有,請嘗試使用the .toFixed() method,它返回一個字符串並舍入到指定的小數位。

TotalPrice = TotalPrice.toFixed(2); 
+0

哦。我討厭決定誰應該得到代表! – 2010-08-26 18:36:56

2

這樣做:

$('#EstimatedPriceDisplay').text('' + TotalPrice); 

應該罰款,或者您可以使用toString方法:

$('#EstimatedPriceDisplay').text(TotalPrice.toString()); 
+0

我喜歡能夠upvote所有誰回答! – 2010-08-26 18:37:32

1

由於您正在重新使用該變量,因此在分配值時我會將其設置爲字符串。

TotalPrice = (Math.round(TotalPrice*100)/100) + ''; 

這樣,你只需做一次,並且不弄亂.val().text()

$('input[name=EstimatedPrice]').val(TotalPrice); 
$('#EstimatedPriceDisplay').text(TotalPrice); 

編輯:改爲Math.round()得到適當的向上/向下取整。

+0

哦! 我從來沒有想過.val()想要一個字符串參數! 我認爲我的老派思維正在阻礙我。 – 2010-08-26 19:07:17

0
$('input[name=EstimatedPrice]').val(TotalPrice.toFixed(2)); 
$('#EstimatedPriceDisplay').text(TotalPrice.toFixed(2));