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)文章
遍歷json獲得數(shù)據(jù)的幾種方法小結(jié)
下面小編就為大家?guī)硪黄闅vjson獲得數(shù)據(jù)的幾種方法小結(jié)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-01-01jquery $(document).ready() 與window.onload的區(qū)別
Jquery中$(document).ready()的作用類似于傳統(tǒng)JavaScript中的window.onload方法,不過與window.onload方法還是有區(qū)別的。2009-12-12jquery中實(shí)現(xiàn)簡單的tabs插件功能的代碼
jquery改變了程序員寫javascript的方式。作為jquery的愛好者和新手,最近我學(xué)會(huì)了用寥寥幾句jquery代碼實(shí)現(xiàn)類似tabs插件的功能,相信此文能為許多剛?cè)腴T的jquery愛好者和想實(shí)現(xiàn)tabs插件功能的朋友帶來一些幫助。2011-03-03jQuery實(shí)現(xiàn)可展開折疊的導(dǎo)航效果示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)可展開折疊的導(dǎo)航效果,結(jié)合實(shí)例形式分析了基于jquery.easing.1.3.js插件的展開折疊效果實(shí)現(xiàn)技巧,非常簡單實(shí)用,需要的朋友可以參考下2016-09-09jquery實(shí)現(xiàn)點(diǎn)擊瀏覽器返回上一頁按鈕并能直接刷新
這篇文章主要介紹了jquery實(shí)現(xiàn)點(diǎn)擊瀏覽器返回上一頁按鈕并能直接刷新,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12jquery輕量級(jí)數(shù)字動(dòng)畫插件countUp.js使用詳解
這篇文章主要為大家詳細(xì)介紹了jquery鼠標(biāo)滾動(dòng)數(shù)字增加插件的使用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-10-10