Я знаю, что есть вопрос об условном DetailView, однако я считаю, что это не то, что я ищу. Я возился с сетью Telerik для MVC, и мне удалось создать DetailView для моих строк в моей сетке. Дело в том, что на данный момент мой DetailView заполнен HTML-кодом, и я хочу иметь новую модель внутри.Создать DetailView для сетки Telerik MVC только при определенных условиях
Основываясь на одном столбце, я хочу создать DetailView только для строк, соответствующих этому значению столбцов. Так, например, если столбец «Тип» равен Плоду, он должен создать DetailView для него (с знаком «+»). Теперь, если «Тип» - растительный, он не должен создавать DetailView (без знака «+»).
Мой текущий код выглядит следующим образом:
Html.Telerik().Grid<SearchViewModel>(Model)
.Name("Search")
.Columns(columns =>
{
columns.Bound(o => o.Type).Width(60);
//etc.
})
//.PrefixUrlParameters(false)
.DetailView(detailView => detailView.ClientTemplate(
"<div>" +
"<h5><span>Details for Type:</span></h5><div><#= DetailsType #></div>" +
"</div>"
))
Как вы можете видеть, я создать DetailView для каждой строки в моей сетке.
Кроме того, я нашел JavaScript, который скрывает plussign для определенных условий, однако он не работает при начальной загрузке (только после того, как я сделал запрос фильтрации, подкачки или обновления). Сценарий связан с .OnRowDataBound.
function hidePlusSign(e) {
var row = e.row;
var dataItem = e.dataItem;
if (dataItem.Type != "Fruit") {
$('a.t-icon', e.row.cells).css('display', 'none');
}
Это работало замечательно. Спасибо. – Alexander
@Alexander Нет проблем просто спросить :) –