I have a GridMvc.Html in my web app.My Requirement
On Click of the Paging\Sorting functionality I want it to hit HttpPost
Action Method.
Currently it hits only HttpGet
.I have tried using jQuery, it doesn't work and I am not sure on it too.This is my Grid in the View
- @Html.Grid(Model.SignalDataList).Columns(columns =>
- {
- columns.Add(s => s.SignalName).Titled("Name");
- columns.Add(s => s.TimeReceived).Titled("Time Received").Filterable(true);
- columns.Add(s => s.Value).Titled("Value").Filterable(true);
-
- }).WithPaging(10).Sortable(true)
Each click on grid (page\Sort column) goes to HttpGet
. So the data I have selected\filtered via DropDown cannot be handled.
Below is my Action Method.The clicks on MVC.Grid hits the below Action method only. The selected data in the DropDown\TextBox is not visible in this method.
- [HttpGet]
- public ActionResult AlarmSignalData()
- {
- SignalDataRepository signalDb = new SignalDataRepository();
- ...
- try
- {
- GetData();
- }
- catch(Exception ex) { return View("Error", new HandleErrorInfo(ex, "SignalData", "AlarmSignalData")); }
- return View(signalDataView);
- }
So I want it to hit HttpPost
, coz I want to process selected data in trextbox\DropDownList in my View . In HttpPost
Action Method I pass my model, from where I can take the TextBox\DropdownList values to fetch filtered data using method GetData(model.SelectSignal,model.FromDate,model,ToData); in the code below
- [HttpPost]
- public ActionResult AlarmSignalData(Model model)
- {
- SignalDataRepository signalDb = new SignalDataRepository();
- ...
- try
- {
- GetData(model.SelectSignal,model.FromDate,model,ToData);
- }
- catch(Exception ex) { return View("Error", new HandleErrorInfo(ex, "SignalData", "AlarmSignalData")); }
- return View(signalDataView);
What I have tried:I have tried using jQuery, to handle via on click of the div which contains the Grid MVC it doesn't work and I am not sure on it too.