@ Ajax.ActionLink不替换部分视图

Sha*_*lam 10 ajax asp.net-mvc

当我点击该链接时,我想用@ Ajax.actionLink替换带有视图的div.但是它不起作用.

这是我的链接

<div>
 <li>   @Ajax.ActionLink("settings","Create","Test",


new AjaxOptions { UpdateTargetId = "components" , InsertionMode = InsertionMode.Replace}
)  </li>
</div>
Run Code Online (Sandbox Code Playgroud)

和我的目标div

<div id="components">
</div>
Run Code Online (Sandbox Code Playgroud)

我还在布局中包含了js文件

    <script src="~/Scripts/Controls/jquery-2.0.3.min.js"></script>
    <script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
    <script src="~/Scripts/jquery.validate.min.js"></script>
    <script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>
    <script src="~/Scripts/modernizr-2.5.3.js"></script> 
Run Code Online (Sandbox Code Playgroud)

和我的行动结果

    public PartialViewResult Create()
    {

        return PartialView("Create");
    }
Run Code Online (Sandbox Code Playgroud)

小智 11

对于安装了Microsoft.jQuery.Unobtrusive.Ajax(通过nu-get或不通过nu-get)并希望通过捆绑使用它的人,不要忘记:

  • 在bundleconfig中添加库.例如:

            bundles.Add(new ScriptBundle("~/bundles/unobtrusive").Include(
                     "~/Scripts/jquery.unobtrusive*"));
    
    Run Code Online (Sandbox Code Playgroud)
  • 渲染它(我的渲染在_Layout.cshtml中):

    @ Scripts.Render( "〜/捆绑/不显眼")

我知道它是一个旧帖子,但我不想添加额外的信息.


Hen*_*usa 7

信不信由你,除了一件事,我已经正确设置了所有东西:

要安装Microsoft jQuery Unobtrusive Ajax,请在程序包管理器控制台中运行以下命令:

PM> Install-Package Microsoft.jQuery.Unobtrusive.Ajax -Version 3.2.2 
Run Code Online (Sandbox Code Playgroud)

说明如下:https://www.nuget.org/packages/Microsoft.jQuery.Unobtrusive.Ajax/