私のASP.net MVCアプリケーションでは、私は剣道UIグリッドにMultiSelectのリストを持っています。私は何をしようとしていると、複数選択リストでの選択に基づいてグリッドをフィルタリングすることですが、私の見解は次のエラーでクラッシュしている:ここでMultiSelectのKendoUIグリッドリストがクラッシュして「... 500(内部サーバーエラー)のステータス」となっているのはなぜですか?
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
は私のコードです:
@(Html.Kendo().MultiSelect()
.Name("filter")
.DataValueField("SkillID")
.DataTextField("SkillName")
.Placeholder("Select Skills")
.Events(e => e.Change("onChange"))
.AutoBind(false)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetSkills", "Home");
})
.ServerFiltering(true);
})
)
@(Html.Kendo().Grid(
(IEnumerable<BugFree.ViewModels.TechSkillViewModel>)ViewBag.TechSkills)
.Name("grid1")
.Columns(columns =>
{
columns.Bound(technician =>
technician.UserID).Filterable(false);
columns.Bound(technician =>
technician.FirstName).Filterable(false);
})
.Pageable()
.Sortable()
.Filterable()
.DataSource(datasource => datasource
.Ajax()
.PageSize(20)
.ServerOperation(false)
.Read(read => read.Action("GetTechnicians", "Home").Data("additionalData"))
)
)
<script>
function additionalData(e) {
var value = $("#filter").data("kendoMultiSelect").value();
alert(value);
return { filter: value }; // send the filter value as part of the Read request
}
function onChange() {
var grid = $("#grid1").data("kendoGrid");
grid.dataSource.read(); // rebind the Grid's DataSource
}
そしてここでコントローラのコードです:
public ActionResult GetTechnicians(string filter, [DataSourceRequest] DataSourceRequest request)
{
// Do the filtering here
return Json(technicians, JsonRequestBehavior.AllowGet);
}
チェックインしましたか?呼び出しが行われたときに何が起きていて、返された結果は何ですか? – TheUknown