如何在 Kendo UI 模型定义中设置数字的小数位?
How to set the decimal places of a number in Kendo UI model defenition?
我正在使用 kendo ui 可编辑网格 NumericTextBox
。通常在 NumericTextBox
中,小数位限制为两位,即如果我输入 10.135,该值将被格式化为 10.14。但我需要的是获得 10.135 本身。这里要做什么。
我的模型定义。
var GridViewModel = new kendo.data.Model.define({
fields: {
Name: { type: "string", editable: false },
Weight: { type: "number", editable: true, validation: { required: true } },
}
});
在我的视图模型中,我将网格设置为。
$("#DryingBinItemsAddedGrid").kendoGrid({
dataSource: {
data: DataDetails,
schema: {
model: GridViewModel
},
},
editable: true,
dataBound: function () {
},
columns: [
{
field: "Name",
title: "Name"
},
{
field: "Weight",
title: "Total Weight"
}
]
});
我没有在这个例子中提到我失败的尝试。目前我的 Weight
字段是一个包含两个字段的数字文本框。在这里要做什么才能使我的 Weight
字段成为带 3 个小数点的 NumericTextBox。
为了控制网格作为编辑器使用的NumericTextBox的配置,您需要实现自定义编辑器,否则,将使用NumericTextBox的默认配置(小数点后2位)。
尝试将您的 "Weight" 列定义更改为:
{
field: "Weight",
title: "Total Weight",
editor: weightEditor
}
并添加一个实现自定义编辑器的 weightEditor 函数:
function weightEditor(container, options) {
$('<input name="' + options.field + '"/>')
.appendTo(container)
.kendoNumericTextBox({
decimals: 3,
})
};
我正在使用 kendo ui 可编辑网格 NumericTextBox
。通常在 NumericTextBox
中,小数位限制为两位,即如果我输入 10.135,该值将被格式化为 10.14。但我需要的是获得 10.135 本身。这里要做什么。
我的模型定义。
var GridViewModel = new kendo.data.Model.define({
fields: {
Name: { type: "string", editable: false },
Weight: { type: "number", editable: true, validation: { required: true } },
}
});
在我的视图模型中,我将网格设置为。
$("#DryingBinItemsAddedGrid").kendoGrid({
dataSource: {
data: DataDetails,
schema: {
model: GridViewModel
},
},
editable: true,
dataBound: function () {
},
columns: [
{
field: "Name",
title: "Name"
},
{
field: "Weight",
title: "Total Weight"
}
]
});
我没有在这个例子中提到我失败的尝试。目前我的 Weight
字段是一个包含两个字段的数字文本框。在这里要做什么才能使我的 Weight
字段成为带 3 个小数点的 NumericTextBox。
为了控制网格作为编辑器使用的NumericTextBox的配置,您需要实现自定义编辑器,否则,将使用NumericTextBox的默认配置(小数点后2位)。
尝试将您的 "Weight" 列定义更改为:
{
field: "Weight",
title: "Total Weight",
editor: weightEditor
}
并添加一个实现自定义编辑器的 weightEditor 函数:
function weightEditor(container, options) {
$('<input name="' + options.field + '"/>')
.appendTo(container)
.kendoNumericTextBox({
decimals: 3,
})
};