如题:MVC3在视图中使用递归生成树状结构
数据库结构:
Id        Name       Fid
1         1-1        0
2         1-2        0
3         1-1-1      1
4         1-1-2      1
5         1-2-1      2求生成方法!!

解决方案 »

  1.   


    <script type="text/javascript">
        d = new dTree('d');     d.add("0", "-1", '全部服务');
        <%
            foreach (var item in (IEnumerable<mry.Model.Service>)ViewData["Services"])
            {
            if(item.Pid==null)item.Pid=0;
            %>
                d.add('<%:item.ID %>', '<%:item.Pid %>', '<%:item.Name %>', "javascript:dTreeOnClick('<%:item.ID %>','<%:item.IsDir%>')");
            <% }%>
        document.write(d);
        d.openAll();
        d.config.useCookies = false;
    </script>
      

  2.   

    在ServiceController里面是获取数据,传到页面。
    public ActionResult ServiceTree()
            {
                List<Service> Services = bll.GetModelList("CompanyID=" + CONST.TopCompanyID);
                ViewData["Services"] = Services;
                return View();
            }
      

  3.   


    你用了tree控件的?  我用的是mvc3  ,没办法使用控件!!!
      

  4.   

    asp.net mvc有很多控件什么的找个用下就知道了.
      

  5.   


    这篇文章我也研究过,不过不知道是不是我是mvc3的原因(具体原因没找到),使用他的方法
    在if和foreach里面没办法写入html,不知道什么原因实现不了!
      

  6.   

    没有用啊用javascript写的。。你好好看看我的代码OK?
      

  7.   

    DEMO