Reputation: 407
I am using Mvc.Grid (Grid.MVC5), I want to stop its page refresh which is automatically called after using any filter. Is it possible?
View :-
@model IEnumerable< MVC6_Grid_with_filters.Models.SchemeMaster>
@using NonFactors.Mvc.Grid;
@{
Layout = null;
}
< link href="@Url.Content("~/Content/MvcGrid/mvc-grid.css")" rel="stylesheet" />
< script src="~/Scripts/jquery-2.1.4.min.js">< /script>
< script src="~/Scripts/MvcGrid/mvc-grid.js" type="text/javascript">< /script>
@(Html
.Grid(Model)
.Build(columns =>
{
columns.Add(c => c.SchemeID).Titled("SchemeID");
columns.Add(c => c.SchemeName).Titled("SchemeName");
columns.Add(c => c.city).Titled("City Name");
columns.Add(o => o.CompanyName).Titled("Company Name");
columns.Add(c => c.Createddate, "Createddate").Titled("Date");
columns.Add(c => c.Married).Titled("Married");
})
.Filterable()
.Sortable()
.Pageable()
)
<script>
$('.mvc-grid').mvcgrid();
</script>
Upvotes: 0
Views: 2244
Reputation: 3502
You can use @Html.AjaxGrid
with your partial view
Controller:
[HttpGet]
public ActionResult Index()
{
// Only main string query values will be visible here.
return View();
}
[HttpGet]
public ActionResult IndexGrid()
{
var list = GetSchemeMasters(); // Your custom list method to get SchemeMasters
return PartialView("YourPartialView", PeopleRepository.GetPeople());
}
Main View:
@Html.AjaxGrid(Url.Action("YourPartialAction"))
Your Partial View:
@model IEnumerable< MVC6_Grid_with_filters.Models.SchemeMaster>
@(Html
.Grid(Model)
.Build(columns =>
{
columns.Add(c => c.SchemeID).Titled("SchemeID");
columns.Add(c => c.SchemeName).Titled("SchemeName");
columns.Add(c => c.city).Titled("City Name");
columns.Add(o => o.CompanyName).Titled("Company Name");
columns.Add(c => c.Createddate, "Createddate").Titled("Date");
columns.Add(c => c.Married).Titled("Married");
})
.Pageable()
.Filterable()
.Sortable()
)
Upvotes: 2