KendoUI Grid十进制数列

imp*_*335 18 jquery telerik kendo-ui kendo-grid

我有一个重量柱(Kg).当用户点击它时,我需要让它们能够输入3位的十进制数.

我遇到的问题是目前只允许他们把它放到2个地方,但显示为3个地方.您可以输入一个数字到多个小数位,但是当它保存时,它会将它舍入到2个位置.

我的专栏设置如下:

...
{
        field: "weight",
        title: "Weight",
        width: 40,
        format: "n4",
        decimals: 4,
        step: 0.001,
        template: "#= weight.toFixed(3)+'kg' #"
}
...
Run Code Online (Sandbox Code Playgroud)

我尝试了一些但没有工作的东西.

Ona*_*Bai 54

几个问题(afaik):

  1. 列中的格式未定义为n4但是{0:n4}.
  2. 格式不仅仅是数字的格式,还可能包含一些文本.例如:{0:n4} Kg.
  3. 对于数字列,无法将属性指定为decimals,step因此您应该定义编辑器函数.

另外,我不明白你的小数和圆形问题.

我建议将列定义为:

{
    field: "weight",
    title: "Weight",
    width: 40,
    editor: numberEditor,
    format: '{0:n3} Kg.'
}
Run Code Online (Sandbox Code Playgroud)

(假设您需要三位小数精度)并定义numberEditor为:

function numberEditor(container, options) {
    $('<input name="' + options.field + '"/>')
            .appendTo(container)
            .kendoNumericTextBox({
                format  : "{0:n3}",
                decimals: 3,
                step    : 0.001
            });
}
Run Code Online (Sandbox Code Playgroud)