Telerik MVC Grid: получение родительской строки после события ComboBox OnChange во время встроенного редактирования - PullRequest
1 голос
/ 07 октября 2011

У меня есть родительский дочерний Telerik MVC grid. В дочерней сетке у меня есть ComboBox. В событии OnChange этого comboBox мне нужно найти значение чего-либо и заполнить другой столбец в этой отредактированной строке. Если у меня уже есть дочерние строки в этой дочерней сетке, следующий код будет работать для получения объекта dataItem родительской строки. Однако, если нет дочерних строк (я просто добавляю первую строку), это не работает.

function ComboBox_OnChangeg(e) 
{
    var comboID = $("#combo").data('tComboBox').value();
    var parentID = row.closest('.t-grid').data('tGrid').data[0].ParentID;  // <--- IS NOT AN OBJECT!!!

    // ajax call, blah blah
}

Без дочерних строк в дочерней сетке, как я могу получить родительский объект dataItem и получить значение столбца родительской строки?

Помните: это событие OnChange для ComboBox в сетке во время встроенного редактирования. Это НЕ событие OnEdit сетки.

Steve

1 Ответ

1 голос
/ 29 июня 2012

Изучив источник страницы, я обнаружил, что детальная сетка отображается в ячейке, охватывающей всю таблицу, расположенной в tr, следующей за главной строкой tr.Итак:

  1. получить ближайшего tr предка с классом t-detail-row
  2. найти ближайшего предыдущего брата tr с классом t-master-row
  3. передать tr, найденный на шаге 2, в dataItem метод клиентской стороны главной сетки

    var $masterRow = $comboElement.closest('tr.t-detail-row').prev('tr.t-master-row');

    var masterData = $ ('# LieuLeconGrid'). Data ('tGrid'). DataItem ($ masterRow);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...