Я очень новичок в Kendo
Привязка пользовательского интерфейса. Мой сценарий: у меня есть привязка сетки с использованием kendo
, и данные отображаются мне, но когда я пытаюсь получить доступ к datasource
в jquery
, это выдает ошибку, которая говорит:
Невозможно прочитать свойство 'DataSource' из неопределенного
ниже - MVC. Код:
@(Html.Kendo().Grid<Buck.TaskNet.Web.Areas.Admin.Models.GetMembers>()
.Name("MemberGrid")
.Columns(columns =>
{
columns.Bound(p => p.Id).Width(15).Title("SL NO").Filterable(false);
columns.Bound(p => p.ClientID).Title("CLIENT ID").Filterable(false);
columns.Bound(p => p.LastName).Title("LAST NAME").Filterable(false);
columns.Bound(p => p.FirstName).Title("FIRST NAME").Filterable(false);
})
.Pageable()
.Sortable()
.HtmlAttributes(new { style = "height:550px;" })
.Filterable(ftp => ftp.Mode(GridFilterMode.Row))
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(10)
.Model(model => model.Id(p => p.Id))
.Read(read => read.Action("GetMembers", "Dashboard"))
.ServerOperation(false)
)
)
JS код здесь:
<script type="text/javascript">
$(document).ready(function () {
$("#fName").keyup(function () {
var value = $("#fName").val();
var grid = $("#MemberGrid").data("kendoGrid"); //undefined
debugger;
if (value) {
grid.dataSource.filter({ field: "FirstName", operator: "contains", value: value });
} else {
grid.dataSource.filter({});
}
});
});
</script>
здесь Html код:
<div class="form-group col-lg-4">
<label class="col-form-label" for="fName">First Name</label>
<input type="text" class="form-control" id="fName">
</div>
Вкл. keyup
функция хочет получить сетку datasource
для примененияПользовательский фильтр, но не может получить datasource
Пожалуйста, проверьте прикрепленное изображение.