如何在MVC5中ajax调用的部分视图中引用外部javascript

How to reference outside javascript in a Partial View called by ajax in MVC5?

本文关键字:视图 引用 javascript 外部 调用 MVC5 ajax      更新时间:2023-09-26

我已经为MVC 3&MVC 4和我希望找到一个MVC 5的解决方案。我有一个通过ajax加载部分视图的视图。在视图中,我在那里定义了所有的javascript逻辑(@section Scripts),因为我的部分视图中不能有任何逻辑。问题是,在我的局部视图中,我希望在成功后调用视图中定义的javascript函数。

以下是我的观点和部分观点

MyView.cshtml

@section Scripts
{
    @Scripts.Render("~/plugins/myplugins")
    <script>
        function callFunctionOutsideThisPartialView() {
        //... This doesn't get called
        }
    </script>
}

MyPartialView.cshtml

@using (Ajax.BeginForm("MyAction", "MyController",
new AjaxOptions
{
    HttpMethod = "POST", 
    InsertionMode = InsertionMode.Replace, 
    UpdateTargetId = "divForPartialView", 
    OnSuccess = "callFunctionOutsideThisPartialView()"
}, new { @class = "form-inline" }))
{
    // Partial View here
}

访问MVC 5中部分视图之外的javascript函数的正确方法是什么?

如果我没记错,只需在普通视图中呈现部分视图,然后通过ajax调用加载该普通视图。将jquery添加到普通视图中。