html - Ajax 调用 Controller 后,ASP.NET MVC 显示 View

标签 html asp.net-mvc jquery razor json

我有一个带有提交表单的 View :当我单击它时,会调用一个 jquery/ajax 函数。此函数必须对 View 模型进行编码,调用 Controller 操作并显示返回的 View 。 现在,这是我的功能:

<script type="text/javascript">
function Analyze() {
    var urlact = '@Url.Action("Analysis")';
    var model = '@Html.Raw(Json.Encode(Model))';
    $.ajax({
        data: model,
        type: "POST",
        url: urlact,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        success: function (data) {
            //WHAT HERE??
        }
    });
}
</script>

Analysis 操作是一种

public ViewResult Analysis(IEnumerable<Azienda> aziende) {
        Debug.WriteLine(aziende.Count());
        return View(aziende);
    }

返回 View ! 如何在成功时显示该 View :函数(数据)? 我尝试将 dataType 更改为 html 并调用成功 alert(data) 但我遇到了编码模型的问题,我尝试评论 contentType 行但相同的模型编码问题。

有人知道怎么做吗? js/query/ajax 解决方法也很好。

谢谢大家!

最佳答案

使用

return PartialView()

代替

return View()

在你的 Controller 中。然后在 ajax 调用的成功函数中,使用 jQuery .html() 函数更新您希望在 html 中更新的元素。参见 Query.html()View() vs. PartialView()

关于html - Ajax 调用 Controller 后,ASP.NET MVC 显示 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13270637/

相关文章:

Jquery DIV 在动画中不能正确滑动

javascript - 替换 div 中的所有 url

javascript - 用鼠标滚轮控制页面滚动动画

javascript - fullPage.js,滚动延迟不工作

jquery - 使用 jquery 获取表中某一行的某些属性

html - 右对齐 CSS 计数器 in::before 伪元素

c# - 试图搭建一个 View ,我得到 "unable to retrieve Metadata for"和 'validation error' 'entity type has no key defined'

.net - 用于 XML/JSON REST API 的 MVC2 或 WCF?

c# - ASP.NET 5 MVC 6 中没有 Entity Framework 的身份验证和授权

jQuery 表单验证 - 错误标签的 CSS