2016-06-29 7 views
0

Я хотел бы отключить редактирование только из первой ячейки редактируемой сетки kendo, и я делаю что-то вроде ниже. На самом деле я пытаюсь удалить datepicker из первой ячейки сетки кендо, поскольку там не требуется быть там. поэтому я использую ниже, и этот код удаляет datepicker из сетки, но он все еще показывает текстовое поле. Я смогу полностью удалить его.Как diable редактировать из редактируемой сетки kendo динамически

function onGridEditing(e) { 
     var gridbody = $("#EditableGrid").data("kendoGrid"); 
     var gridData = gridbody.dataSource.view(); 
     var currentUid = gridData[0].uid; 
     var Date = gridData[0].Date; 
     var currenRow = gridbody.table.find("tr[data-uid='" + currentUid + "']"); 
     //var firstCell = currenRow.find('td:not(:empty):first'); 
     //firstCell.find('.k-select').remove(); 
     //alert(firstCell.val()); 
     currenRow.find('.k-select').remove();// this removes the datepicker but it is still showing textbox when user click on the row for edit. 
     currenRow.find(".editDate").remove(); 

ALso I tried to apply a css over there so that it hide datepicker but not working 
//$("#EditableGrid").data("kendoGrid")._data[0].addClass('hideMe'); 
    } 

<style> 

    .hideMe { 
     /*visibility: hidden;*/ 
     border: none !important; 
     background-color: none !important; 
    } 

</style> 
+0

На редактирования события вы можете просто скрыть весь столбец, если он не используется 'сетки. hideColumn (0); ' –

+0

http://stackoverflow.com/questions/20881484/make-cell-readonly-in-kendo-grid-if-condition-is-met – calinaadi

ответ

0

Вы можете отключить редактирование определенного столбца в модели источника данных. Например:

model: { 
    fields: { 
     ProductID: { 
      //this field will not be editable (default value is true) 
      editable: false 
     } 
    } 
} 

Источник: Telerik Forums

Edit: Чтобы сделать это динамически:

var model = $("#EditableGrid").data("kendoGrid").dataSource.getByUid(currentUid); 
if (model) { 
    model.fields["ProductID"].editable = false; 
} 
+0

Но это отключит целую колонку. Я просто хочу отключить редактирование только в первой ячейке строки, а не в других. – Sandy

+0

Я отредактировал свой ответ – mrmashal