Используя AJAX, мы можем POST к методу в ViewComponent? - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть ViewComponent с именем WatchList.Он вызывается на странице по маршруту с именем Request.

. Вот как обычно выглядит URL:

enter image description here

И вот как я настраиваю ViewComponent:

@await Component.InvokeAsync("WatchList", new { requestId = Model.RequestInput?.RequestId })

Я пытаюсь сделать AJAX POST из ViewComponent:

$.ajax({
    type: "POST",
    url: "Request/WatchList?handler=GetMyself",
    beforeSend: function (xhr) {
        xhr.setRequestHeader("XSRF-TOKEN",
            $('input:hidden[name="__RequestVerificationToken"]').val());
    },

Но я сталкиваюсь сОшибка «Синтаксический анализ XML: не найден корневой элемент».

Местоположение: http://localhost:12227/.../.../Request/WatchList?handler=GetMyself

Я не могу определить, ошибаюсь ли маршрут или не могу позвонитьМетоды ViewComponent из AJAX.

Вот моя структура:

enter image description here

Есть идеи, что я здесь не так делаю?

1 Ответ

0 голосов
/ 12 декабря 2018

Как сказал Крис, вы не можете использовать AJAX со страницы ViewComponent, чтобы попасть в метод в классе компонента view. Но вы можете попробовать следующий обходной путь, который, возможно, вам понадобится, использовать retrun ViewComponent(" ViewComponentName",new{ paramater1,paramater2...}); в PageHandler для вызоваметод InvokeAsync в классе ViewComponent.

...