ASP.NET中基于JQUERY的高性能的TreeView補(bǔ)充
更新時(shí)間:2011年02月23日 12:48:54 作者:
根據(jù) 假正經(jīng)哥哥 的博客整理,我第一次使用的另外的TREEVIEW,可是 做出來的效果 太卡,不知道什么原因。這次用的假正經(jīng)哥哥的這篇文章。
下面貼上完整的代碼,我走了很多彎路,原因就是看了回復(fù)中朋友們的代碼,現(xiàn)在想起來其實(shí)不用那么費(fèi)事吧。
<script src="js/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="js/jquery.mytree.js" type="text/javascript"></script>
<link href="second.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
$(function(){
var o = { showcheck: true};
o.data =<%=treeNodes %>;
$("#tree").treeview(o);
})
</script>
后臺(tái)
public string GetFirJson()
{
string mystr = "[";
DataTable dt = DBUtility.db.ExecuteTable("select * from class where parientid=0");
int a = dt.Rows.Count;
for (int i = 0; i <= dt.Rows.Count - 1; i++)
{
mystr += GetOtherJson(Convert.ToInt32(dt.Rows[i]["classid"].ToString())) + ",";
}
mystr = mystr.Substring(0, mystr.Length - 1);
mystr += "]";
mystr = mystr.Replace("'", "\"");
return mystr;
}
//遞歸
private string GetOtherJson(int pid)
{
DataTable dt = DBUtility.db.ExecuteTable("select * from class where classid=" + pid);
string strjson = "";
bool haschild = IsHasChild(pid);
strjson = "{";
strjson += "'id':'" + pid + "',";
strjson += "'text':'" + dt.Rows[0]["classname"].ToString() + "',";
strjson += "'value':'" + dt.Rows[0]["classid"].ToString() + "',";
strjson += " 'showcheck':true,";
strjson += " 'complete':true,";
strjson += "'checktate':0,";
strjson += "'hasChildren':" + haschild.ToString().ToLower() + ",";
strjson += "'ChildNodes':";
if (!IsHasChild(pid))
{
strjson += "null}";
}
else
{
strjson += "[";
DataTable mydt = DBUtility.db.ExecuteTable("select * from class where parientid=" + pid);
for (int i = 0; i <= mydt.Rows.Count - 1; i++)
{
strjson += GetOtherJson(Convert.ToInt32(mydt.Rows[i]["classid"].ToString())) + ",";
}
strjson = strjson.Substring(0, strjson.Length - 1);
strjson += "]}";
}
return strjson;
}
private bool IsHasChild(int pid)
{
DataTable dt = DBUtility.db.ExecuteTable("select * from class where parientid=" + pid);
if (dt.Rows.Count == 0)
{
return false;
}
else
{
return true;
}
}
最后數(shù)據(jù)庫 大家看著建就行了 再次 感謝 不正經(jīng)哥哥
復(fù)制代碼 代碼如下:
<script src="js/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="js/jquery.mytree.js" type="text/javascript"></script>
<link href="second.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
$(function(){
var o = { showcheck: true};
o.data =<%=treeNodes %>;
$("#tree").treeview(o);
})
</script>
后臺(tái)
復(fù)制代碼 代碼如下:
public string GetFirJson()
{
string mystr = "[";
DataTable dt = DBUtility.db.ExecuteTable("select * from class where parientid=0");
int a = dt.Rows.Count;
for (int i = 0; i <= dt.Rows.Count - 1; i++)
{
mystr += GetOtherJson(Convert.ToInt32(dt.Rows[i]["classid"].ToString())) + ",";
}
mystr = mystr.Substring(0, mystr.Length - 1);
mystr += "]";
mystr = mystr.Replace("'", "\"");
return mystr;
}
//遞歸
private string GetOtherJson(int pid)
{
DataTable dt = DBUtility.db.ExecuteTable("select * from class where classid=" + pid);
string strjson = "";
bool haschild = IsHasChild(pid);
strjson = "{";
strjson += "'id':'" + pid + "',";
strjson += "'text':'" + dt.Rows[0]["classname"].ToString() + "',";
strjson += "'value':'" + dt.Rows[0]["classid"].ToString() + "',";
strjson += " 'showcheck':true,";
strjson += " 'complete':true,";
strjson += "'checktate':0,";
strjson += "'hasChildren':" + haschild.ToString().ToLower() + ",";
strjson += "'ChildNodes':";
if (!IsHasChild(pid))
{
strjson += "null}";
}
else
{
strjson += "[";
DataTable mydt = DBUtility.db.ExecuteTable("select * from class where parientid=" + pid);
for (int i = 0; i <= mydt.Rows.Count - 1; i++)
{
strjson += GetOtherJson(Convert.ToInt32(mydt.Rows[i]["classid"].ToString())) + ",";
}
strjson = strjson.Substring(0, strjson.Length - 1);
strjson += "]}";
}
return strjson;
}
private bool IsHasChild(int pid)
{
DataTable dt = DBUtility.db.ExecuteTable("select * from class where parientid=" + pid);
if (dt.Rows.Count == 0)
{
return false;
}
else
{
return true;
}
}
最后數(shù)據(jù)庫 大家看著建就行了 再次 感謝 不正經(jīng)哥哥
您可能感興趣的文章:
- 基于MVC5和Bootstrap的jQuery TreeView樹形控件(二)之?dāng)?shù)據(jù)支持json字符串、list集合
- 基于MVC5和Bootstrap的jQuery TreeView樹形控件(一)之?dāng)?shù)據(jù)支持json字符串、list集合
- jquery實(shí)現(xiàn)點(diǎn)擊TreeView文本父節(jié)點(diǎn)展開/折疊子節(jié)點(diǎn)
- 打造基于jQuery的高性能TreeView(asp.net)
- 為jQuery.Treeview添加右鍵菜單的實(shí)現(xiàn)代碼
- Jquery.TreeView結(jié)合ASP.Net和數(shù)據(jù)庫生成菜單導(dǎo)航條
- jQuery 學(xué)習(xí)第六課 實(shí)現(xiàn)一個(gè)Ajax的TreeView
- 選擇TreeView控件的樹狀數(shù)據(jù)節(jié)點(diǎn)的JS方法(jquery)
- jQuery 樹形結(jié)構(gòu)的選擇器
- jQuery treeview樹形結(jié)構(gòu)應(yīng)用
相關(guān)文章
jQuery.Uploadify插件實(shí)現(xiàn)帶進(jìn)度條的批量上傳功能
這篇文章主要介紹了jQuery.Uploadify插件實(shí)現(xiàn)帶進(jìn)度條的批量上傳功能,還具有取消上傳及刪除等功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
jQuery實(shí)現(xiàn)的Div窗口震動(dòng)效果實(shí)例
這篇文章主要介紹了jQuery實(shí)現(xiàn)的Div窗口震動(dòng)效果,可實(shí)現(xiàn)點(diǎn)擊提交后窗口出現(xiàn)震動(dòng)效果,需要的朋友可以參考下2015-08-08
基于jQuery實(shí)現(xiàn)的水平和垂直居中的div窗口
在建立網(wǎng)頁布局的時(shí)候,我們經(jīng)常會(huì)面臨一個(gè)問題,就是讓一個(gè)div實(shí)現(xiàn)水平和垂直居中,雖然好幾種方式實(shí)現(xiàn),但是今天介紹時(shí)我最喜歡的方法,通過css和jQuery實(shí)現(xiàn)。2011-08-08
十個(gè)迅速提升JQuery性能讓你的JQuery跑得更快
jQuery正在成為Web開發(fā)人員首選的JavaScript庫,作為Web開發(fā)者,除了要了解語言和框架的應(yīng)用技巧外如何提升語言的性能,本文提供即刻提升你的腳本性能的十個(gè)步驟 簡單的幾步讓你的JQuery跑得更快 需要的朋友可以參考下2012-12-12
jquery imgareaselect 使用利用js與程序結(jié)合實(shí)現(xiàn)圖片剪切
當(dāng)前在ff3下,用jquery的 width()與height()函數(shù),在不設(shè)置圖片的寬度與高度的時(shí)候,不能取到 需要在圖片load函數(shù)里面初始化才可以2009-07-07
jQuery的3種請(qǐng)求方式$.post,$.get,$.getJSON
這篇文章主要介紹了jQuery的3種請(qǐng)求方式$.post,$.get,$.getJSON,需要的朋友可以參考下2014-03-03

