J'ai une grille Telerik imbriquée dans une autre grille Telerik et je veux forcer la grille à se rafraîchir à chaque expansion de la grille parente. Les données dans la grille imbriquée peuvent changer rapidement et j'ai donc besoin de la grille imbriquée pour se rafraîchir à chaque événement d'expansion.Force Telerik Grid MVC actualiser dans DetailView expand
Mon Telerik Grille:
<div>
@(Html.Telerik().Grid<RentableUnit>()
.Name("RentableUnits")
.Columns(columns =>
{
columns.Bound(e => e.UnitID).Hidden();
columns.Bound(e => e.Name).Width(800);
columns.Bound(e => e.IsExpanded).Hidden();
})
.ClientEvents(events => events.OnRowDataBound("employees_onRowDataBound")
.OnDetailViewExpand("unit_onDetailViewExpand")
.OnDetailViewCollapse("unit_onDetailViewCollapse")
.OnDetailViewExpand("toggleDetail")
)
.DetailView(details => details.ClientTemplate(
//stuff in template
)
.DataBinding(dataBinding => dataBinding.Ajax().Select("RentableUnits", "Home"))
.Sortable()
)
</div>
Mon Javascript:
function unit_onDetailViewExpand(e) {
var mstRow = e.masterRow;
var unitNumber = mstRow.cells[1].innerHTML;
var grid = $(this).data('tGrid');
grid.$rows().not(e.masterRow).each(function(index, row) {
grid.collapseRow(row);
});
//I´ve been trying to force databinding on the grid row
grid.expandRow(e.row);
//I´ve been trying this among others but I´m missing something
}
Quelqu'un peut-il me diriger dans la bonne direction sur la façon de forcer le GridRow redéfinissez? Toute aide est très appréciée :)
Thanx @XMR, c'est beaucoup plus simple, et plus propre à utiliser la fonction find() pour cela. Je suis encore en train d'apprendre mon chemin dans le monde javascript;) – gardarvalur