首页 新闻 搜索 专区 学院

ASP.NET MVC Html.RenderPartial

0
悬赏园豆:5 [已解决问题] 解决于 2014-12-26 09:47

写了一个行政区划级联下拉的PartialView,并且它不在父页面的目录下,也不在Shared目录下,请问如何使用Html.RenderPartial加载该页面?如何向后台Action传递参数?

秋荷雨翔的主页 秋荷雨翔 | 初学一级 | 园豆:189
提问于:2014-12-25 17:06
< >
分享
最佳答案
0

我试了下,不在那两个目录关系不大,但至少要在Views文件夹下,要不然会很麻烦。如果直接在Views文件夹下可以这样写.Html.RenderPartial("~/Views/_ViewPartial.cshtml")

向后台Action传递参数的话你PartialView只能接受参数,并显示。要想给后台传递,必须用户提交这个页面,才能传递给后台Action啊。

收获园豆:5
Slark.NET | 小虾三级 |园豆:692 | 2014-12-26 09:41

现在问题已经解决了:

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;
}

 

秋荷雨翔 | 园豆:189 (初学一级) | 2014-12-26 09:54

@秋荷雨翔: Nice

Slark.NET | 园豆:692 (小虾三级) | 2014-12-26 10:18
其他回答(1)
0

可以考虑使用Html.Action(),这样就可以指定Controller。

幻天芒 | 园豆:36662 (高人七级) | 2014-12-26 09:18
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册