Как я могу указать XMLHttpRequest на пользовательский обработчик типа OnGet? - PullRequest
0 голосов
/ 24 октября 2019

Я пишу веб-приложение, которое должно обновлять поля в соответствии с состоянием. Я написал статическую часть в Razor Page. У меня также есть кусок скрипта, который отправляет запрос и обновляет поля после получения ответа. Я застрял в точке рассказа сценария, куда отправлять запрос. У меня есть пользовательский обработчик под названием OnGetAsyncTimesStamp в файле .cshtml.cs. Как должен выглядеть мой

xhttp.open("GET", "Details?handler=AsyncTimeStamp", true);

?

скрипт:

@section scripts 
{
    <script>
        function TimestampChangedFunction()
        {
            var xhttp = new XMLHttpRequest();
            xhttp.onreadystatechange = function() {
                //if(this.readyState == 4 %% this.status == 200){
                    document.getElementById("MachineType"      ).innerHTML = xhttp.responseText; 
                }
                xhttp.open("GET", "Details?handler=AsyncTimeStamp", true);
                xhttp.send();
            } 
    </script>
}

обработчик:

namespace ProjectName.Pages_Machines
{
    public class DetailsModel : PageModel
    {

        (...)
    public JsonResult OnGetAsyncTimeStamp()
    {
       Console.WriteLine("AJAX request received");
       List<string> lstring = new List <string>
       {
        "Val 1",
        "Val 2",
        "Val 3",
        "Val 4",
        "Val 5",
        "Val 6",
        "Val 7",
        "Val 8"
       };

    return new JsonResult(lstring);
    }
  }
}
...