2014-01-10 67 views
3

我試圖讓我的程序顯示兩位小數點,但它一直下降零,所以如果我有140.00它顯示爲140.0,但如果我做140.15它會顯示140.15。但是,由於某種原因,它總是會降低零。這是我認爲需要編輯的代碼。任何幫助,將不勝感激。ColdFusion漂浮問題

<cfinput type="Text" name="HourlyRate" 
     value="0.00" 
     required="Yes" 
     validate="float"    
     message="A Default Hourly Rate is required...." 
     class="inputText200" size="8">** 

或這裏

<input type="text" name="Rate" 
     <cfif #getHourlyForm.Rate# neq ""> value="#getHourlyForm.Rate#"</cfif> /> 

回答

5

的原因是,當你輸出內容進入「價值」你基本上呈現HTML。

這意味着當CF生成HTML時,您的數值將被「轉換」爲字符串表示形式。

退房的NumberFormat function here這將使你告訴CF如何輸出的內容,而不是它試圖做一個「最好的猜測」

<tr colspan="2"> 
     <td class="tdDescription"> Rate Per Hour </td> 
     <td><input type="text" name="Rate" class="inputText350" <cfif getHourlyForm.Rate neq ""> value="#NumberFormat(getHourlyForm.Rate,"9.99")#"</cfif>/></td> 
</tr> 
+0

什麼肖恩說 - #val(NumberFormat的(getHourlyForm.Rate, '000,000.00'))#...並且您不需要「CFIF」表單中的英鎊符號。 –