写了一个行政区划级联下拉的PartialView,并且它不在父页面的目录下,也不在Shared目录下,请问如何使用Html.RenderPartial加载该页面?如何向后台Action传递参数?
我试了下,不在那两个目录关系不大,但至少要在Views文件夹下,要不然会很麻烦。如果直接在Views文件夹下可以这样写.Html.RenderPartial("~/Views/_ViewPartial.cshtml")
向后台Action传递参数的话你PartialView只能接受参数,并显示。要想给后台传递,必须用户提交这个页面,才能传递给后台Action啊。
现在问题已经解决了:
AreaSelect.cshtml页面后台代码:
public ActionResult AreaSelect() { return PartialView(); }
主页面前台代码:
@{ ViewDataDictionary data = new ViewDataDictionary(); data.Add("areaId", "2"); Html.RenderPartial(Url.Content("~/Views/Backstage/Area/AreaSelect.cshtml"), null, data); }
AreaSelect.cshtml页面前台获取传入的参数:
@{ string areaId = ViewBag.areaId; }
@秋荷雨翔: Nice
可以考虑使用Html.Action(),这样就可以指定Controller。