2014-01-10 4 views
0

Это моя схема:кендо сетки «редактируемая ложь» для обновления «редактируемая правда» для создания

id: 'EntryCode', 
fields: { 
    EntryCode: {editable: true, validation: {required: true}, nullable: true}, 
    width:  {editable: true, validation: {required: true}, nullable: true}, 
    length: {editable: true, validation: {required: true}, nullable: true} 
} 

Я хочу, чтобы EntryCode будет доступен для редактирования только в создать вариант, в то время как в обновление не будет доступно для редактирования.

Как достичь этой цели без шаблонов?

ответ

1

так как я использую редактируемые: рядный Я найти ячейку и замените его содержимое следующим образом:

edit: function (e) { 
    if (!e.model.isNew()) { 
     e.container.find('td:eq(0)').text(e.model.EntryCode); 
    } 
} 

, чтобы узнать больше, см. Это question.

0

В случае редактирования сетки, проверьте e.model.isNew(), и сделать grid.closeCell(), например:

edit: function (e) { 
    var fieldName = e.container.find("input[name]").attr("name"); 

    if (fieldName === "EntryCode" && !e.model.isNew()) { 
     this.closeCell(); 
    } 
} 

(demo, в котором поле ProductID является редактируемым для третьего (нового) ряда, но не в течение первых двух строк)

Смежные вопросы