我想渲染一个页面,但该页面是一个“编辑”页面。像这样的东西
@RenderPage("~/Views/Edit/25.cshtml")
但这不起作用,可能我应该将参数“25”作为参数传递,但到目前为止没有成功。在我的程序中,我有两个选项卡,两个调用(渲染)页面都抛出 Ajax(Jqueryui - http://jqueryui.com/tabs/),我想当我点击一个选项卡时,他用一个具体标识。
这是可能的?我应该怎么做?
我想渲染一个页面,但该页面是一个“编辑”页面。像这样的东西
@RenderPage("~/Views/Edit/25.cshtml")
但这不起作用,可能我应该将参数“25”作为参数传递,但到目前为止没有成功。在我的程序中,我有两个选项卡,两个调用(渲染)页面都抛出 Ajax(Jqueryui - http://jqueryui.com/tabs/),我想当我点击一个选项卡时,他用一个具体标识。
这是可能的?我应该怎么做?
如果您希望在单击特定选项卡时执行一些操作,那么我建议您应该使用 Ajax。看看 jQuery.Ajax。或者您希望它是一个纯 http Web 请求,然后您可以在用户单击选项卡时在同一页面上传递某些查询字符串,并通过识别传递的值相应地加载内容。
要在 asp.net mvc 中通过 ajax 呈现选项卡,您可以这样做。
CSHTML:
创建选项卡控件,选项卡标题中的每个锚点使用不同的路由值。当然,您可以将它们链接到控制器的不同操作:
<div id=tabs>
<ul>
<li>@Html.ActionLink("Tab1", "Edit", new { id = 25 })</li>
<li>@Html.ActionLink("Tab2", "Edit", new { id = 26 })</li>
</ul>
</div>
控制器,请注意,您在此处返回了一个局部视图,该视图被渲染到 tabcontrol:
public ActionResult Edit(int id)
{
// You probably want to load the Model from the db with id param. I just write a message
ViewBag.Message = id;
return PartialView("Edit");
}
我的部分视图 Edit.cshtml:
<span>Edit me @ViewBag.Message</span>
Javascript,只需正常创建您的选项卡控件:
$("#tabs").tabs();
一般来说,如果你想用参数渲染一些局部视图,我会亲自去
@Html.Action("Edit", "Controller", new {id=25})