2016-11-11 64 views
1

對於NumberTextBox我需要以百分比格式顯示其值,例如,如果值爲0.5我需要顯示50%在Dojo中格式化數字

目前我使用的是pattern: "#%",但它顯示了錯誤的值。

請問我可以如何解決它?

可選:

是否有可能也同樣顯示值,而不百分比如果可能的話僅僅是舉例50

我也試過pattern:"#,##0.0%"但沒有成功。

https://jsfiddle.net/gibbok/ejnar255/

<label for="programmatic">Opacity:</label> 
<input id="programmatic" type="text" /> 


require(["dijit/form/NumberTextBox", "dojo/domReady!"], function(NumberTextBox) { 
    new NumberTextBox({ 
     name: "programmatic", 
     constraints: { 
      min: 0, 
      max: 1, 
      pattern: "#%" 
     }, 
     value: 0.5 
    }, "programmatic").startup(); 
}); 

相關文檔:

https://dojotoolkit.org/reference-guide/1.7/quickstart/numbersDates.html

http://www.unicode.org/reports/tr35/tr35-numbers.html#Number_Format_Patterns

https://dojotoolkit.org/reference-guide/1.10/dijit/form/NumberTextBox.html

回答

1

我能解決使用FOLL這個問題由於圖案:

pattern:"#.##%"

https://jsfiddle.net/gibbok/ejnar255/

require(["dijit/form/NumberTextBox", "dojo/domReady!"], function(NumberTextBox) { 
    new NumberTextBox({ 
     name: "programmatic", 
     constraints: { 
      min: 0, 
      max: 1, 
      pattern:"#.##%" 
     }, 
     value: 0.25 
    }, "programmatic").startup(); 
}); 


<label for="programmatic">Opacity:</label> 
<input id="programmatic" type="text" />