如何对javascript事件执行Html.Action?

如何对javascript事件执行Html.Action?,javascript,jquery,html,asp.net-mvc,razor,Javascript,Jquery,Html,Asp.net Mvc,Razor,我在cshtml文件中有一个div,它显示来自另一个操作的视图,如下所示: <div id="tabs-1ua"> @Html.Action("Index", "Admin") </div> $("a[href='#tabs-1ua']").click(function (event, ui) { $("#tabs-1ua").val("@Html.Action('Index', 'Admin')"); }); 如上所述,val参数与原始div中显示的

我在cshtml文件中有一个div,它显示来自另一个操作的视图,如下所示:

<div id="tabs-1ua">
  @Html.Action("Index", "Admin")
</div>
$("a[href='#tabs-1ua']").click(function (event, ui) {

    $("#tabs-1ua").val("@Html.Action('Index', 'Admin')");

});
如上所述,val参数与原始div中显示的Razor代码相同。但是,这并不能获得每次激活div事件时执行的操作的预期结果。每次事件发生时激活razor代码的正确方法是什么?我确保通过使用警报进行测试来捕获事件,所以这不是问题所在


谢谢。

您可以尝试使用ajax异步加载所需内容,方法如下:

$("a[href='#tabs-1ua']").click(function (event, ui) {

   $.ajax({
       url: "/Admin/Index",
       data: {}
   }).done(function (htmlResponse) {
       $("#tabs-1ua").html(htmlResponse)
   });
});
这将在id=tabs-1ua的div中加载操作的结果


也许这是一种更简单的方法,请告诉我是否可以提供进一步的帮助

您可以尝试使用ajax异步加载所需的内容,方法如下:

$("a[href='#tabs-1ua']").click(function (event, ui) {

   $.ajax({
       url: "/Admin/Index",
       data: {}
   }).done(function (htmlResponse) {
       $("#tabs-1ua").html(htmlResponse)
   });
});
这将在id=tabs-1ua的div中加载操作的结果


也许这是一个更简单的方法,让我知道我是否可以提供进一步的帮助

结果如何?当前发生了什么?@BviLLe_Kid当前,尽管我可以确认内容应该已经更改,但div仍然显示与初始加载相同的内容。您调试了吗?这个动作被断点击中了吗?@BviLLe_Kid我刚刚调试过,看到这个动作只在页面的初始加载时被击中,而不是在点击事件发生时被击中。好的,那你一定要仔细看看。这是使用Javascript调用服务器(控制器)的最佳选择结果是什么?当前发生了什么?@BviLLe_Kid当前,尽管我可以确认内容应该已经更改,但div仍然显示与初始加载相同的内容。您调试了吗?这个动作被断点击中了吗?@BviLLe_Kid我刚刚调试过,看到这个动作只在页面的初始加载时被击中,而不是在点击事件发生时被击中。好的,那你一定要仔细看看。这是使用Javascript调用服务器(控制器)的最佳选择。您很高兴,很高兴它有帮助,很高兴编码!你很好,很高兴它有帮助,很高兴编码!