jquery實現點擊TreeView文本父節點展開/摺疊子節點

來源:互聯網
上載者:User

以前一個現在不用的帳號發布的隨筆,現在人肉搬過來吧。
註冊使用者有一段時間了,一直很忙,到現在還沒有寫一篇,忽然覺的一定要花點時間記錄和總結一些東西。好吧,就從這裡開始了。

今天客戶提出要點擊菜單(TreeView實現的)的父級節點時,展開節點。心想這個應該是很常見的功能吧,特意google了一下,發現大部分是將的不是js實現的,有些js實現的寫的麻煩,乾脆自己寫一個吧,應該不難的。

首先思路是,,讓文本點擊的時候執行左邊‘+'號的事件,查看源碼看到,‘+'號的事件是:
javascript:TreeView_ToggleNode(ctl00_body__menuTree_Data,0,document.getElementById('ctl00_body__menuTreen0'),' ',document.getElementById('ctl00_body__menuTreen0Nodes'))
Ok,接下來就是篩選出所有的父級節點,加上處理事件就ok了,下面是完整代碼:
複製代碼 代碼如下:
<script type="text/javascript">
$().ready(function()
{
$("img[src$=tv_NoExpend.jpg]").each(function()//篩選出所有的父級node
{
//ctl00_body__menuTreet4i//父級node的id是這樣的規則:ctl00_body__menuTreet加id加i
var id = $(this).parent().attr("id").replace("ctl00_body__menuTreet","").replace("i","");
var nId = 'ctl00_body__menuTreen'+id;
BindExpandJs($("#ctl00_body__menuTreet"+id+"i"),nId);//給‘檔案夾'圖片綁定事件
BindExpandJs($("#ctl00_body__menuTreet"+id),nId); //給'文本節點'綁定事件 });
});
function BindExpandJs(obj,nId)
{
$(obj)
.css("cursor","pointer")
.removeAttr("href")
.click(function()
{
TreeView_ToggleNode(ctl00_body__menuTree_Data,0,document.getElementById(nId),' ',document.getElementById(nId+'Nodes'));
});
}
</script>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.