如何将操作链接结果传递给部分视图占位符?

时间:2014-04-09 13:01:40

标签: asp.net-mvc partial-views

好的,所以在我的页面中我有一个链接列表:

@foreach (var item in Model)
{
    @Html.ActionLink(item.Name, "Recruitments", new { Id = item.Id })
    <br />
}

我想要的是将partialview返回到页面上的其他位置,放在我预留的占位符中。

这可能吗?或者我是否必须在某处使用jquery ajax调用?

3 个答案:

答案 0 :(得分:1)

我确实遇到了问题,因为我发现了一些代码,所以我理解你的问题。

要么你应该使用剃刀助手,要么只是使用jquery来操纵dom。

请注意,jquery非常简单

$("#selectorOnYourPlaceHolder").html($("#selectorOnYourLinks").html());
$("#selectorOnYourLinks").html("")

答案 1 :(得分:1)

您希望使用Ajax执行此操作:

$.ajax({
        type: "GET", url: "somePageOrHandler.aspx", data: "var1=4343&var2=hello",
        success: function(data)
            {
                $('#someDivInPlaceHolder').html( data);
            }
         });

答案 2 :(得分:1)

你可以在asp.net mvc中 @ Ajax.ActionLink ,它有不同的重载你可以根据你的要求使用这里是代码:

@Ajax.ActionLink("ActionName", // action name
                "Recruitments", //controller name
                 new { Id = item.Id }, // route values
                 new AjaxOptions { HttpMethod = "GET", //HttpMethod Get or Post
                 InsertionMode = InsertionMode.Replace,  // Replace content of container
                 UpdateTargetId = "Container", // id of element in which partial view will load 
                 OnComplete = "Completed();" }) // js function to be executed when ajax call complete


<div id="Container">
</div>

<script>

function Completed()
{
alert("completed");
}
</script>