Reloading ajax grid with post data
Name Surname Marital status Time stamp
Joe Crosswave Married 1/24/2020 2:11:25 PM
Merry Lisel Widowed 1/24/2020 2:11:25 PM
Henry Crux Single 1/24/2020 2:11:25 PM
Cody Jurut 1/24/2020 2:11:25 PM
Simon Scranton Single 1/24/2020 2:11:25 PM
Leena Laurent Divorced 1/24/2020 2:11:25 PM
Ode Cosmides Married 1/24/2020 2:11:25 PM
Diandra Mizner Single 1/24/2020 2:11:25 PM
Pete Cassel Married 1/24/2020 2:11:25 PM
Nicky Tremblay Married 1/24/2020 2:11:25 PM
Controller

[HttpGet]
public ViewResult Index()
{
    return View();
}

[HttpGet]
[HttpPost]
public PartialViewResult IndexGrid(String name)
{
    return PartialView("_IndexGrid", repository.Filter(name));
}

Javascript

document.getElementById('ContentRefresh').addEventListener('click', function () {
    var grid = new MvcGrid(document.querySelector('.mvc-grid'));
    grid.requestType = 'post'; // defaults to get
    grid.query.set('name', 'Joe');

    grid.reload();
});

Main view

@Html.AjaxGrid(Url.Action("IndexGrid"))

Ajax grid partial view

@model IQueryable<Person>

@* Should only include grid declaration *@

@(Html
    .Grid(Model)
    .Build(columns =>
    {
        columns.Add(model => model.Name).Titled("Name");
        columns.Add(model => model.Surname).Titled("Surname");
        columns.Add(model => model.MaritalStatus).Titled("Marital status");

        columns.Add(model => DateTime.Now).Titled("Time stamp");
    })
)