Hi,
I have 2 Kendo Grids in which 2nd grid is read based on the selection of row of 1st grid. The code is:
1st grid
<% Html.Kendo().Grid<EvaluationsQuestionsEvaluationVersionGridViewModel>(Model.VersionsGridModel)
.Name("Versions")
.DataSource(dataSource => dataSource
.Ajax()
.Model(model => model.Id(a => a.EvaluationVersionId))
.ServerOperation(true)
.Create(create => create.Action("InsertEvaluationVersion", "Evaluations"))
.Read(read => read.Action("LoadEvaluationsQuestionsEvaluationVersionGridAjax", "Evaluations"))
.Update(update => update.Action("UpdateEvaluationVersion", "Evaluations").Data("onUpdateEvaluationVersion"))
)
.Events(e => e.Change("onVersionGridRowSelect")
.Edit("onEditEvaluationsVersion")
.Save("onSaveEvaluationsVersion")
)
.....
2nd grid
<% Html.Kendo().Grid<EvaluationsQuestionsEvaluationPillarsGridViewModel>()
.Name("Pillars")
.DataSource(dataSource => dataSource
.Ajax()
.Model(model => model.Id(a => a.EvaluationMasterPillarId))
.ServerOperation(true)
.Read(read => read.Action("LoadEvaluationsQuestionsEvaluationPillarsGridAjax", "Evaluations")
.Data("onLoadEvaluationsQuestionsEvaluationPillarsGridData"))
)
......
function onVersionGridRowSelect(e) {
var grid = $("#Versions").data("kendoGrid");
var currentRow = grid.dataItem(grid.select());
var evaluationVersionId = currentRow.EvaluationVersionId;
$('#evaluationVersionId').val(evaluationVersionId);
$("#Pillars").data("kendoDropDownList").dataSource.read();
}
function onLoadEvaluationsQuestionsEvaluationPillarsGridData(e) {
var evaluationVersionId = $('#evaluationVersionId').val(); // "evaluationVersionId" is set beforehand
var showDeletedCheckbox = $('#Checkbox1').val();
return { evaluationVersionId: evaluationVersionId, showDeleted: showDeletedCheckbox }
}
But 2nd grid can not be read because Data function "onLoadEvaluationsQuestionsEvaluationPillarsGridData" is not called. So what is the problem in code? Thanks.