кендо встроенное редактирование включает и отключает поля

Как я могу включить определенные поля в режиме добавления и отключить в режиме редактирования. Я добавил следующий код, но не могу включить поле описания в режиме добавления. Пожалуйста, сообщите, как я могу этого добиться? Спасибо

model.fields(p=> p.Description).Editable(false);

Я хочу включить описание в режиме добавления и отключить в режиме редактирования. Следующий код не работает. Пожалуйста, сообщите, если что-то не так с кодом, и если какой-либо другой способ сделать это. Спасибо

function onEdit(e) {
    var indexCell = e.container.context.cellIndex;
    var grid = $('#BTSession').data('kendoGrid');


    if (!e.model.isNew()) { // when Editing
        if (indexCell != 'undefined' && grid.columns[indexCell].Title == "Description") {
                $('#BTSession').data("kendoGrid").closeCell();
        }
    }
}

person Spidey    schedule 12.02.2013    source источник


Ответы (1)


Есть две проблемы:

  1. title в нижнем регистре. Чек должен быть: grid.columns[indexCell].title
  2. isNew() всегда false. В качестве альтернативы вы можете проверить, является ли id undefined при добавлении новой записи.

Что-то типа:

function onEdit(e) {
    var indexCell = e.container.context.cellIndex;
    var grid = $('#BTSession').data('kendoGrid');


    if (e.model.id) { // when Editing the id is defined
        if (indexCell != 'undefined' && grid.columns[indexCell].title == "Description") {
            grid.closeCell();
        }
    }
}

ПРИМЕЧАНИЕ. Если в вашей модели столбец id не называется id (скажем, myId), используйте правильное имя.

РЕДАКТИРОВАНИЕ: см. рабочий пример здесь

person OnaBai    schedule 12.02.2013
comment
моя модель.ID = RefID, поэтому я поставил if(e.model.RefID). Я получил следующую ошибку: Ошибка времени выполнения Microsoft JScript: невозможно получить значение свойства «заголовок»: объект имеет значение null или не определен - person Spidey; 12.02.2013
comment
Какую версию Kendo UI вы используете? - person OnaBai; 12.02.2013
comment
Я полагаю, что использовал следующее: Q2 2012 SP1 - person Spidey; 12.02.2013
comment
Пожалуйста, проверьте jsfiddle.net/OnaBai/ehnSq. При создании вы не можете редактировать Имя, но можете это делать при редактировании существующей записи. - person OnaBai; 12.02.2013
comment
да, я проверяю ваш код, но, к сожалению, все еще не работает на сайте. Спасибо - person Spidey; 13.02.2013
comment
Мой код работает в вашем браузере или ваш код не работает? - person OnaBai; 13.02.2013
comment
Привет OnaBai, это работает. Но мне нужно изменить режим редактирования на InCell. В настоящее время мне нужен режим редактирования InLine. Любая мысль? - person Spidey; 13.02.2013