1

Я использую сетку редактирования kendo ui с NumericTextBox. Обычно в NumericTextBox десятичные разряды ограничены двумя i.e, если я вхожу 10.135, значение будет отформатировано до 10.14. Но мне нужно получить 10.135. Что здесь делать.Как установить десятичные разряды числа в модели Kendo UI defenition?

Мое определение модели.

var GridViewModel = new kendo.data.Model.define({ 
    fields: { 
     Name: { type: "string", editable: false }, 
     Weight: { type: "number", editable: true, validation: { required: true } }, 
    } 
}); 

, и на мой взгляд модель, я установил Grid as.

$("#DryingBinItemsAddedGrid").kendoGrid({ 
     dataSource: { 
      data: DataDetails, 
      schema: { 
       model: GridViewModel 
      }, 
     }, 
     editable: true, 
     dataBound: function() { 

     }, 
     columns: [ 
       { 
        field: "Name", 
        title: "Name" 
       }, 
       { 
        field: "Weight", 
        title: "Total Weight" 
       } 
     ] 
    }); 

Я не упомянул о своих неудачных попытках в этом примере. В настоящее время мое поле Weight представляет собой числовое текстовое поле с двумя полями. Что нужно сделать здесь, чтобы сделать мое поле Weight NumericTextBox с 3 десятичной точкой.

ответ

1

Для управления конфигурацией NumericTextBox, используемой сеткой в ​​качестве редактора, вам необходимо реализовать собственный редактор, иначе будет использоваться стандартная конфигурация для NumericTextBox (которая равна 2 десятичным разрядам).

Попробуйте изменить свой "вес" определение столбца:

{ 
    field: "Weight", 
    title: "Total Weight", 
    editor: weightEditor 
} 

и добавить функцию weightEditor, который реализует собственный редактор:

function weightEditor(container, options) { 
    $('<input name="' + options.field + '"/>') 
    .appendTo(container) 
    .kendoNumericTextBox({ 
     decimals: 3, 
    }) 
}; 

Demo: http://dojo.telerik.com/@Stephen/uviLO

+0

Спасибо, что работали. – Nitheesh