Сетка кендо при отображении номера редактирования `,` seperator - PullRequest
0 голосов
/ 23 марта 2020

Я создаю простую демонстрацию здесь. При редактировании в amount поле я хочу отобразить , разделитель? В настоящее время он отображает , только в режиме редактирования. Есть идеи, как этого добиться?

DEMO IN DOJO

var data = [{ "name": 'Venue A', "amount": 10000.50}, 
{"name": 'Venue B', "amount": 250000.00}, 
{"name": 'Venue C', "amount": 1500000.43 }];

$(document).ready(function () {
  var dataSource = new kendo.data.DataSource({
    data: data,
    schema: {
      model: {
        id: "id",
        fields: {
          name: { type: "string"  },
          amount: { type: "amount"  }
        }
      }
    }
  });

  $("#grid").kendoGrid({
    dataSource: dataSource, 
    toolbar: [{ name: "create", text: "Add" }],
    columns: [
    { field:"name" , title: "Name"},
    { field: "amount", title: "Amount", format: "{0:n}" }],
    editable: true
  });
});
<div id="grid"></div>

1 Ответ

1 голос
/ 23 марта 2020

Tl; dr: я не знаю, но со мной.

Согласно документации разрешены только следующие типы:

The available dataType options are:
"string"
"number"
"boolean"
"date"
"object"
(Default) "default"

Я предлагаю вам использовать «число» в этом случае, так как оно будет работать для сортировки и фильтрации.

Вы можете проверить, что Кендо не понимает тип «суммы», написав некоторый неверный текст в редакторе и увидеть, что он остается таким же.

Вы можете создать свой собственный редактор, как показано в this dojo :

 { field: "amount", title: "Amount", format: "{0:c}",
   editor: function(container, options) {
       const input = $(`<input name="${options.field}">`).appendTo(container);
       input.kendoNumericTextBox({
           format: "c"
       });
    }
  }

Однако, если вы тестируете Kendo NumericTextBox здесь , вы увидите, что при редактировании разделители разделов не отображаются.

Вы можете создать собственный текстовый редактор и обрабатывать все события - это чистый JavaScript вопрос.

...