ASP.Net AjaxForm Таблица Сортировка / Пейджинг

Я пытаюсь создать свою таблицу в asp.net mvc, используя форму ajax.

Моя проблема в том, что я не знаю, как отправлять свои данные на сервер, находясь в форме ajax для моей сортировки и подкачки.

У моей модели есть те свойства Sort, ItemPerPage, CurrentPage, SearchText.

когда я нажимаю на навигацию, звонок на сервер работает, но я не получаю никаких значений в моей модели!!

var ajaxOptions = new AjaxOptions
{
    HttpMethod = "Get",
    InsertionMode = InsertionMode.ReplaceWith,
    UpdateTargetId = "beer-search-result"
};

using (Ajax.BeginForm("SearchBeer", "Beers", new { Area = "Brewery" }, ajaxOptions))
{
    <input type="text" id="Search" name="SearchText" class="form-control" placeholder="Recherche" />
    <button type="submit" class="btn btn-primary">Rechercher</button>

    @Ajax.Paging(Model, ajaxOptions)

    ... my grid ...
}

Вот мой метод пейджинга:

    public static IHtmlString Paging(this AjaxHelper ajax, IPage page, AjaxOptions ajaxOptions)
    {
        var nav = new TagBuilder("nav");
        nav.MergeAttribute("aria-label", "Page navigation");

        var ul = new TagBuilder("ul");
        ul.AddCssClass("pagination");

        if (page.ShowPrevious())
        {
            ul.InnerHtml += PagingSpecial("&laquo;", "Previous");
        }

        for (var i = 0; i < page.NumberOfPages(); i++)
        {
            var li = new TagBuilder("li");
            var link = new TagBuilder("a");
            link.InnerHtml = (i + 1).ToString();
            link.MergeAttributes(ajaxOptions.ToUnobtrusiveHtmlAttributes());

            if (i == page.CurrentPage)
            {
                li.AddCssClass("active");
            }

            li.InnerHtml += link;
            ul.InnerHtml += li;
        }

        if (page.ShowNext())
        {
            ul.InnerHtml += PagingSpecial("&raquo;", "Next");
        }

        nav.InnerHtml += ul;
        return MvcHtmlString.Create(nav.ToString(TagRenderMode.Normal));
    }

    private static TagBuilder PagingSpecial(string text, string ariaText)
    {
        var li = new TagBuilder("li");

        var link = new TagBuilder("a");
        link.Attributes.Add("href", "#");
        link.Attributes.Add("aria-label", ariaText);

        var span = new TagBuilder("span");
        span.Attributes.Add("aria-hidden", "true");
        span.InnerHtml = text;

        link.InnerHtml += span;
        li.InnerHtml += link;

        return li;
    }

Что мне нужно добавить к моей ссылке, чтобы она отправляла их значение в значение модели CurrentPage!

0 ответов

Другие вопросы по тегам