Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将列表从控制器传递到视图和显示_Javascript_C#_Ajax_Asp.net Mvc - Fatal编程技术网

Javascript 如何将列表从控制器传递到视图和显示

Javascript 如何将列表从控制器传递到视图和显示,javascript,c#,ajax,asp.net-mvc,Javascript,C#,Ajax,Asp.net Mvc,我尝试从用户处获取datetime值并返回选定的电影放映。 控制器将列表传递给视图,但html不会更改 控制器 public ActionResult GetScreenings() { return View(); } [HttpPost] public ActionResult GetScreenings(string starteDateTime, string endDateTime, str

我尝试从用户处获取datetime值并返回选定的电影放映。 控制器将列表传递给视图,但html不会更改

控制器

public ActionResult GetScreenings()
            {
                return View();
            }
    [HttpPost]
    public ActionResult GetScreenings(string starteDateTime, string endDateTime, string movieTitle)
    {
        List<ScreeningDisplayDTO> screeningsList = new List<ScreeningDisplayDTO>();
        if (String.IsNullOrEmpty(movieTitle))
        {
            screeningsList = screeningDisplayService.GetScreeningByParametr(starteDateTime, endDateTime).ToList();
        }
        else
        {
            screeningsList = screeningDisplayService.GetScreeningByParametr(starteDateTime, endDateTime, movieTitle).ToList();

        }
        return View(screeningsList);

    }

谢谢您的帮助。

如果您想使用ajax更改视图,必须使用局部视图

<div id="partialView">
    
    <partial name="_PartialView" />
        
    </div>

也许使用“提交”按钮会更方便。

我有“提交”按钮。我不得不加上e.preventDefault();对于我的点击事件,现在一切正常。单击“提交”按钮后的较早时间,控制器会导致“获取”操作而不是“发布”。我不知道为什么。我建议您也使用stopImmediatePropagation()-$(文档)。在(“单击”,“提交”,函数(e){e.preventDefault();e.stopImmediatePropagation();}
$.ajax({
        traditional: true,
        type: "POST",
        url: '@Url.Action("GetScreenings")',
        data: { 'starteDateTime': starteDateTime, 'endDateTime': endDateTime, 'movieTitle': movieTitle  },
        success: function () {
            window.location.href = data;
        }
    });
<div id="partialView">
    
    <partial name="_PartialView" />
        
    </div>
  success: function (result) {
             $("#partialView").html(result);
        }