Javascript 在剑道UI数字输入中提供百分比金额
如何在剑道UI数字文本框中输入百分比值,以便将输入的值作为百分比?例如,如果在文本框中输入Javascript 在剑道UI数字输入中提供百分比金额,javascript,jquery,validation,kendo-ui,Javascript,Jquery,Validation,Kendo Ui,如何在剑道UI数字文本框中输入百分比值,以便将输入的值作为百分比?例如,如果在文本框中输入5,则写入的基础值是5,实际上是500%。我想要的是将5作为5%,将底层值写入.05 我关心的是,我将指示用户在字段中输入一个百分比 HTML: 我的百分比: JavaScript: $("#percentage").kendoNumericTextBox({ format: "p0", step: 0.01 }); var model = kendo.observable({
5
,则写入的基础值是5
,实际上是500%
。我想要的是将5
作为5%
,将底层值写入.05
我关心的是,我将指示用户在字段中输入一个百分比
HTML:
我的百分比:
JavaScript:
$("#percentage").kendoNumericTextBox({
format: "p0",
step: 0.01
});
var model = kendo.observable({
percentage: 5,
percentageAsDecimal: 0.05,
onChange: function () {
this.set('percentageAsDecimal', this.get('percentage') / 100);
}
});
kendo.bind($('div'), model);
请参见此处的JSFIDLE:问题在于您告诉数字文本框使用“p0”格式。然后,它希望用户以十进制形式输入百分比。这是正常的行为。相反,对于您尝试执行的操作,您希望告诉数字文本框使用整数格式,但将值存储为十进制形式 JsFiddle: HTML:
为清楚起见,您的意思是希望百分比表示为十进制。您可以按照以下步骤扩展MVVM功能
var model = kendo.observable({
percentage: 5,
percentageAsDecimal: 0.05,
onChange: function () {
this.set('percentageAsDecimal', this.get('percentage') / 100);
}
});
kendo.bind($('div'), model);