I am new to MVC Kendo. I am creating a sample programme with one Datetimepicker, two combo boxes and grid. What I want to know when I select the dropdownboxes data and datetime picker date I want to populate Grid. I have done some work, but I can't find the way to send selected dropdown and datetimepicker values to controller when I click the Search button. If any one knows please let me know.
Razor View-
@using PortalModels
<table>
<tr>
<td>@Html.Label("Date")</td>
<td></td>
<td>@Html.Kendo().DatePicker().Name("DTPicker")</td>
</tr>
<tr>
<td>@Html.Label("District")</td>
<td></td>
<td>
@(Html.Kendo().ComboBox()
.Name("Districts")
.HtmlAttributes(new { style = "width:300px" })
.Placeholder("Select category...")
.DataTextField("CdNm")
.DataValueField("CdKy")
.Filter(FilterType.Contains)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetCascadeDistrict", "MarketInfo");
});
})
)
</td>
</tr>
<tr>
<td>@Html.Label("Market")</td>
<td></td>
<td>
@(Html.Kendo().ComboBox()
.Name("Markets")
.HtmlAttributes(new { style = "width:300px" })
.Placeholder("Select product...")
.DataTextField("CdNm")
.DataValueField("CdKy")
.Filter(FilterType.Contains)
.DataSource(source => {
source.Read(read =>
{
read.Action("GetCascadeMarket", "MarketInfo")
.Data("filterMarkets");
})
.ServerFiltering(true);
})
.Enable(false)
.AutoBind(false)
.CascadeFrom("Districts")
)
<script>
function filterMarkets() {
return {
categories: $("#Districts").val(),
productFilter: $("#Markets").data("kendoComboBox").input.val()
};
}
</script>
</td>
<td><input type="submit" id="Submittbn" /></td>
</tr>
</table>
@(Html.Kendo().Grid<PortalModels.MarketInfoModel>()
.Name("grid")
.Columns(columns =>
{
columns.Bound(m => m.ItmNm).Width(400);
columns.Bound(m => m.Unit).Width(150);
columns.Bound(m => m.Unit).Width(150);
})
.DataSource(dataSource =>
dataSource.Ajax()
.ServerOperation(false)
.Read(read => read.Action("ReadMarketInfoDetails", "MarketInfo").Data("MarketData"))
.Create(create => create.Action("FamilyDetails", "Home").Data("FamilyData"))
.PageSize(150)// Action method invoked when the grid needs data
)
.Pageable()
.Sortable() // Enable sorting
)
<script>
$(function () {
var MarketGrid = $('#grid').data("kendoGrid");
$("#Submittbn").click(function () {
MarketGrid.dataSource.read();
})
});
function MarketData() {
var EffectiveDtValue = $("#DTPicker").data("kendoDatePicker")
var DistrictValue = $('#Districts').data("kendoComboBox")
var MarketValue = $('#Markets').data("kendoComboBox")
return {
intEmpky: EffectiveDt.value(),
intAdrKy: DistrictValue.value(),
strCode: MarketValue.value()
}
}
</script>