1

在我的 asp.net mvc 4 应用程序中,我想将参数传递给局部视图,但是我们要传递的参数来自 javascript 代码

下面是代码

<script>
    var TestId;

 $(document).ready(function () {

        // Send an AJAX request       


        $.getJSON("/api//GetFun?Id="+@ViewBag.Id,

                function (data) {

TestId= data.Id
//i am getting the id here which i need to pass in partial view

}
1)...........
});


</script>

html代码:

 <div id="tab1" >

 2)....      @{ Html.RenderAction("MyPartialView", "MyController", new { id = TestId });}
  </div>

所以让我知道如何将测试 ID 传递给我的部分视图:在 HTML(2) 代码或 javascript (1) 中

4

3 回答 3

4

在您的 javascript 中使用以下代码并从 javascript 函数加载您的视图

var url = '@Url.Action("MyPartialView", "MyController")';
url += '/?Id=' + TestId ;
$("#tab1").load(url); 

将以下代码放入您的控制器中

public ActionResult MyPartialView( int id )
{
    return Partial( "MyPartialView", id );
}

希望这可以帮助

于 2013-05-21T06:15:37.257 回答
1

这个SO 问题:

假设您的控制器称为“MyController”,您的局部视图称为“MyPartialView”,并且您创建一个控制器方法,该方法接受 Id 参数并返回局部视图:

public ActionResult GetPartialView( int id )
{
    return Partial( "MyPartialView", id );
}

然后,您可以使用以下 jQuery 加载部分视图:

$('#tab1').load('/My/GetPartialView?id=' + TestId);
于 2013-05-20T15:08:07.497 回答
0


查看:这里我们将“category”参数传递给带有“admin”值的Controller

@{ Html.RenderAction("Menu", "Nav", new { category = "admin" }); }


控制器:在这里我们得到“类别”参数的值

public PartialViewResult Menu(string category, string menu = null)
{
     IEnumerable<Menu> menus = repository.Menus
    .Select(x => x)
    .Where(x => (x.MenuCategory == category)
    .OrderBy(x => x.MenuSequence).ToList(); 
     return PartialView(menus);
}


希望这可以帮助。

于 2013-10-31T21:50:12.190 回答