使 dijit.form.currencytextbox 接受小数点后一位的负值
Make dijit.form.currencytextbox accept negative value with one digit after decimal
我正在使用 dijit.form.currencytextbox
并希望允许负值。当我给出值 '-0.1'
时,我得到错误:
'value entered is not valid'
当我给出值 '-0.10'
时,该值被认为是有效的。
如何使 '-0.1'
成为有效值。
我尝试添加 contraints-places:2
以使输入的值转换为小数点后两位数,但这没有任何区别。
'0.1'
被自动格式化 '[=18=].10'
并被接受为有效输入。
<input type="text" id="amountTextBox" data-field="amount" maxlength="10"
required="required" data-dojo-type="dijit/form/CurrencyTextBox"
value="0" data-dojo-props="constraints:{min:-9999999.99,max:9999999.99,places:2},
currency:'USD', trim: true, intermediateChanges: true" />
我认为这是由于 Dojo 版本问题
请将您的项目设置为较新的版本,它应该可以工作
看到这个工作 Fiddle whcich 使用 dojo 1.12
另请参阅工作片段:
require(["dijit/form/CurrencyTextBox", "dijit/form/Button", "dojo/on",
"dojo/domReady!"
], function(CurrencyTextBox, Button, On) {
var fp = new CurrencyTextBox({
currency: 'USD',
value: -0.1,
constraints: {
places: 2
}
}, 'currency');
var btn = new Button({}, "btn");
console.log(fp);
fp.startup();
On(btn, "click", function(e) {
console.log(fp.get("value"))
alert(fp.get("value"));
});
});
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/dojo/1.12.1/dijit/themes/claro/claro.css" />
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.12.1/dojo/dojo.js"></script>
<div id='currency'></div>
<br /><br />
<body class="claro">
<div id='btn'>
Alert value
</div>
</body>
我正在使用 dijit.form.currencytextbox
并希望允许负值。当我给出值 '-0.1'
时,我得到错误:
'value entered is not valid'
当我给出值 '-0.10'
时,该值被认为是有效的。
如何使 '-0.1'
成为有效值。
我尝试添加 contraints-places:2
以使输入的值转换为小数点后两位数,但这没有任何区别。
'0.1'
被自动格式化 '[=18=].10'
并被接受为有效输入。
<input type="text" id="amountTextBox" data-field="amount" maxlength="10"
required="required" data-dojo-type="dijit/form/CurrencyTextBox"
value="0" data-dojo-props="constraints:{min:-9999999.99,max:9999999.99,places:2},
currency:'USD', trim: true, intermediateChanges: true" />
我认为这是由于 Dojo 版本问题
请将您的项目设置为较新的版本,它应该可以工作
看到这个工作 Fiddle whcich 使用 dojo 1.12
另请参阅工作片段:
require(["dijit/form/CurrencyTextBox", "dijit/form/Button", "dojo/on",
"dojo/domReady!"
], function(CurrencyTextBox, Button, On) {
var fp = new CurrencyTextBox({
currency: 'USD',
value: -0.1,
constraints: {
places: 2
}
}, 'currency');
var btn = new Button({}, "btn");
console.log(fp);
fp.startup();
On(btn, "click", function(e) {
console.log(fp.get("value"))
alert(fp.get("value"));
});
});
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/dojo/1.12.1/dijit/themes/claro/claro.css" />
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.12.1/dojo/dojo.js"></script>
<div id='currency'></div>
<br /><br />
<body class="claro">
<div id='btn'>
Alert value
</div>
</body>