jquery在div上加载url内容

时间:2014-04-09 07:04:42

标签: javascript jquery ajax asp.net-mvc

我有一个MVC应用程序 在我的索引页面中,我有一个子菜单,当单击一个动作链接时,我希望它通过jquery调用控制器的功能并加载所有内容并将其加载到div中。

这就是我所看到的

<ul class="nav nav-tabs">
    <li onclick="loadDetails">@Html.MenuItemActionSpecific("Details","Details","Account")</li>
    <li>@Html.MenuItemActionSpecific("Change password", "Manage", "Account")</li>
    <li>@Html.MenuItemActionSpecific("Connection", "Index", "Connection")</li>
</ul>
<div id="content"></div>

我想在div content

中加载内容

Html.MenuItemActionSpecific是自定义Html帮助器。 这就是我试过的

 function loadDetails() {
        alert("hello");
        event.preventDefault();
        $('#content').load(@Url.Action("Details"));
    }

单击子导航菜单时,不会调用该函数。

这是生成的Html,

<ul class="nav nav-tabs">
    <li onclick="loadDetails"><li><a href="/Account/Details">Details</a></li></li>
    <li><li><a href="/Account/Manage">Change password</a></li></li>
    <li><li><a href="/Connection">Connection</a></li></li>
</ul>

控制器中的详细信息操作

public ActionResult Details()
{
   ....
    return PartialView(userDetail);
}

我该怎么办?

2 个答案:

答案 0 :(得分:0)

纠正错误

试试这个

<li onclick="loadDetails()"><li><a href="/Account/Details">Details</a></li></li>

$('#content').load('<%= Url.Action("Details") %>');

答案 1 :(得分:0)

下面必须工作。使用此

function loadDetails() {
        alert("hello");
        event.preventDefault();
        $.get('@url.action("Details","YourControllerName")',function(data){
        $('#content').html(data);
        })
    }

同样在您的控制器中,而不是使用return View("YourViewName"),请使用return PartialView("YourViewName");