2013-03-14 109 views
1

我正在製作一個表格,其中有一個預期的總數以及哪裏有一個實際的總數。最後一個字段應顯示字段值中的差異。所以代碼應該做的是在比較字段中的數據後顯示一個負數或正數,如果這些基數發生變化,結果也應該改變。這是我到目前爲止:jQuery表格字段計算結果顯示+或 - 結果

我有更多的代碼在這上面,下面的一段代碼工作正常,它只是不顯示數字是否定的或積極的。

var difference = ztotal - total; 

這裏就是我有一個問題,代碼的第一部分是工作很好,而且呈現出負數,但第二部分是增加了「+ - 」。如果ztotal或總金額變化以反映正確的結果,我需要刪除加號或減號。

if(ztotal > total){ 
    $('#difference').val(parseFloat(difference).toFixed(2) * -1); 
    } 
    else { 
    $('#difference').val('+' + parseFloat(difference).toFixed(2)); 

}

回答

1

有幾個問題與您的代碼:

  1. parseFloat功能轉換String類型的變量,你需要什麼,在這種情況下,浮動。只需取消該功能的使用
  2. 爲什麼檢查一個是否比另一個大,而不僅僅是輸出數字。例如:

    var difference = total - ztotal; 
    $("#difference").val((difference > 0 ? "+" : "") + difference.toFixed(2)); 
    

這個例子使用簡寫的if-else結構。也就是說,看起來像這樣的部分:

difference > 0 ? "+" : "" 

所有這一切它的意思是如果變量difference大於0,寫了一個「+」,否則,寫了一個「」(空字符串)。它只是節省空間!

+0

Ahha!你讓我意識到我犯了另一個錯誤: 'VAR差=考慮z全 - 總;' 應該是: 'VAR差異=總 - 考慮z全;' 負數現在顯示一個「 - 」,唯一的剩下要做的事情是在正數時加上'+'。感謝您一直以來的幫助。 – 2013-03-14 16:48:35

+0

任何人都可以提出一個建議,當它是一個正數時如何添加'+',然後如果總數改變並將其刪除,則將其刪除? – 2013-03-14 17:25:31

+0

如果數字大於0,請添加加號。否則,不要。 :) – 2013-03-14 17:49:47