我正在努力获取值并将它们传递给控制器以使用SQL查询进行过滤。问题是,虽然我可以传递来自所有其他组件的值,例如文本框到控制器,但我无法进行多选。无论我做什么,我都会收到类似“null”值或
的错误消息“uncaught typeerror:无法读取属性'value'的null”
或
“uncaught typeerror:无法读取属性'val'的null”
这是我的控制器和视图;
@(Html.Kendo().Grid<Model.GridModel>()
.Name("grid")
.Columns(columns =>
{
columns.Bound(p => p.Id);
columns.Bound(p => p.RaporNo);
columns.Bound(p => p.BankaRaporNo);
columns.Bound(p => p.Eksper);
columns.Bound(p => p.TalepTarihi).Format("{0:dd-MM-yyyy}"); ;
columns.Bound(p => p.BeklenenTeslimTarihi).Format("{0:dd-MM-yyyy}"); ;
columns.Bound(p => p.RaporOnayTarihi).Format("{0:dd-MM-yyyy}"); ;
columns.Bound(p => p.UzmanAdi);
columns.Bound(p => p.DenetmenAdi);
columns.Bound(p => p.SorumluUzman);
columns.Bound(p => p.Onayci);
columns.Bound(p => p.Banka);
columns.Bound(p => p.SubeAdi);
columns.Bound(p => p.MusteriUnvani);
columns.Bound(p => p.Ili);
columns.Bound(p => p.Ilcesi);
columns.Bound(p => p.FiiliKullanimDurumu);
columns.Bound(p => p.AnaTasinmazVasfi);
columns.Bound(p => p.MevcutAlan);
columns.Bound(p => p.Firma).Hidden();
columns.Bound(p => p.SurecAciklama).Hidden();
columns.Bound(p => p.Ay).Hidden();
columns.Bound(p => p.Yil).Hidden();
columns.Bound(p => p.Mahalle).Hidden();
columns.Bound(p => p.Koy).Hidden();
columns.Bound(p => p.Pafta).Hidden();
columns.Bound(p => p.EskiAda).Hidden();
columns.Bound(p => p.EskiParsel).Hidden();
columns.Bound(p => p.StartBeklenenTeslimTarihi).Hidden();
columns.Bound(p => p.StartRaporOnayTarihi).Hidden();
columns.Bound(p => p.StartTalepTarihi).Hidden();
columns.Bound(p => p.EndBeklenenTeslimTarihi).Hidden();
columns.Bound(p => p.EndRaporOnayTarihi).Hidden();
columns.Bound(p => p.EndTalepTarihi).Hidden();
columns.Bound(p => p.SurecAciklama).Hidden();
})
.HtmlAttributes(new { style = "height: 550px;" })
.Scrollable()
.Sortable()
.AutoBind(true)
.Selectable()
.Navigatable()
.Filterable()
.ToolBar(toolbar => toolbar.Create())
.ToolBar(tools => tools.Excel())
.Excel(excel => excel
.FileName("Excel_Dokumu.xlsx")
.Filterable(true)
.ProxyURL(Url.Action("Excel_Export_Save", "Function"))
)
.Excel(excel => excel.AllPages(true))
.Pageable(pageable => pageable
.Refresh(true)
.PageSizes(true)
.ButtonCount(5))
.DataSource(dataSource => dataSource
.Ajax()
.Events(events => events.Error("error_handler"))
.Model(model => model.Id(p => p.Id))
.Sort(sort => sort.Add("Id").Ascending())
.Create(update => update.Action("Function_Create", "Function"))
.Read(read => read.Action("Function_Read", "Function").Data("additionalInfo"))
.PageSize(10)
)
)
<script>
function additionalInfo(e) {
return {
Id: $("#id").val(),
RaporNo: $("#rapor_no").val(),
BankaRaporNo: $("#banka_rapor_no").val(),
Eksper: $("#eksper").val(),
StartTalepTarihi: $("#startTalep").val(),
EndTalepTarihi: $("#endTalep").val(),
StartBeklenenTeslimTarihi: $("#startBeklenenTeslim").val(),
EndBeklenenTeslimTarihi: $("#endBeklenenTeslim").val(),
StartRaporOnayTarihi: $("#startRaporOnay").val(),
EndRaporOnayTarihi: $("#endRaporOnay").val(),
UzmanAdi: $("#uzman").val(),
DenetmenAdi: $("#denetmen").val(),
SorumluUzman: $("#sorumlu_uzman").val(),
Onayci: $("#onay").val(),
Banka: $("#banka").val(),
SubeAdi: $("#sube").val(),
MusteriUnvani: $("#musteri_unvani").val(),
Firma: $("#firma").val(),
Ili: $("#iller").val(),
Ilcesi: $("#ilce").val(),
FiiliKullanimDurumu: $("#fiili_kullanim").val(),
SurecAciklama: $("#multiSelectDurumu").data('kendoMultiSelect').val(),
Ay: $("#multiselectAy").val(),
Yil: $("#multiselectYıl").val(),
Mahalle: $("#mahalle").val(),
Koy: $("#koy").val(),
Pafta: $("#pafta").val(),
EskiAda: $("#ada").val(),
EskiParsel: $("#parsel").val(),
};
}
</script>
和控制器;
public ActionResult Function_Read([DataSourceRequest] DataSourceRequest request, string CustId, string Id, string RaporNo,
string BankaRaporNo, string Eksper, DateTime? StartTalepTarihi, DateTime? EndTalepTarihi, DateTime? StartBeklenenTeslimTarihi,
DateTime? EndBeklenenTeslimTarihi, DateTime? StartRaporOnayTarihi, DateTime? EndRaporOnayTarihi, string UzmanAdi, string DenetmenAdi,
string SorumluUzman, string Onayci, string Banka, string SubeAdi, string MusteriUnvani, string Ili, string Ilcesi, string FiiliKullanimDurumu,
string SurecAciklama, string Ay, string Yil, string Mahalle, string Koy, string Pafta, string EskiAda, string EskiParsel, string Firma)
{
string CustIdCookie = Request.Cookies.Get("CustId").Value.ToString();
Model.GridModel datas = new Model.GridModel();
List<Model.GridModel> dataModel = datas.GetAll(CustIdCookie, Id, RaporNo, BankaRaporNo, Eksper, StartTalepTarihi, EndTalepTarihi, StartBeklenenTeslimTarihi
, EndBeklenenTeslimTarihi, StartRaporOnayTarihi, EndRaporOnayTarihi,
UzmanAdi, DenetmenAdi, SorumluUzman, Onayci, Banka, SubeAdi, MusteriUnvani, Ili, Ilcesi, FiiliKullanimDurumu, SurecAciklama, Ay, Yil, Mahalle, Koy, Pafta, EskiAda, EskiParsel, Firma);
return Json(dataModel.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}