电话
13363039260
1、获取当前站点所有栏目树的html脚本
Html.SiteColumnsHtml(int? siteId)
siteId参数可以不设置,不设置则默认当前站点id,下面的方法也类似,不再一一说明
2、获取当前站点一级栏目的html脚本
Html.SiteColumnHtml(int? siteId)
3、获取当前栏目的所有子级栏目树html脚本
Html.ColumnChildrensHtml(int? columnId)
columnId参数不设置则默认当前栏目id,下面方法参数也类似
4、获取当前栏目的相邻子级栏目html脚本
Html.ColumnChildrenHtml(int? columnId)
5、获取当前栏目的顶级栏目下的所有子级栏目树html脚本
Html.TopColumnChildrensHtml(int? columnId)
6、获取当前栏目的顶级栏目的第一个子级栏目的html脚本
Html.TopColumnChildrenHtml(int? columnId)
7、获取当前栏目相邻的父级栏目的所有子级栏目树的html脚本
Html.ParentColumnChildrensHtml(int? columnId)
8、获取当前栏目相邻的父级栏目的相邻子级栏目树的html脚本
Html.ParentColumnChildrenHtml(int? columnId)
实例1:获取站点的栏目树结构,模板中写法如下
<div class="nav" id="nav"> @Html.SiteColumnsHtml() </div>
栏目树默认结构为标准的ul,li的嵌套结构。
实例2:通过定义函数自定义栏目Html结构,代码如下。
2.1:首先模板中申明一个函数,建议放在模板第一行,代码如下:
@functions{ private string ColumnTree(int parentId=0) { string html = "<ul>"; int siteId = Html.CurrentSiteId();//获取当前站点Id IEnumerable<dynamic> columnList=Html.GetColumnList(c => c.SiteId == siteId);//获取当前站点的所有栏目数据集 columnList = columnList.Where(c => c.ParentId == parentId);//筛选当前级别的数据 columnList = columnList.OrderBy(c => c.Xuhao);//按序号排序 if (columnList.Count()==0) { return ""; //没有子集则返回空字符串 } foreach (dynamic item in columnList) { int columnId = item.Id;//调用栏目id字段 string name = item.Name; //调用栏目Name字段 string url = Html.ColumnUrl(columnId);//获取栏目url地址 int level = item.Level;//调用栏目level字段 //自定义拼接开始 html += "<li>"; html += "<a href=\"" + url + "\">" + name + "</a>"; html += ColumnTree(columnId); //递归获取 html += "</li>"; } html += "</ul>"; return html; } }
2.2:调用方法如下:
<div class="nav"> @Html.Raw(ColumnTree()) </div>