2012-07-12 58 views
0

我有HTML代碼,這樣sample.html內文件:如何在jQuery.load(html)之後選擇jQuery.Treeview中的當前元素?

<ul id='topics' class='filetree'> 
<li><span class='folder'><a href='?Lang=en&TopicID=#'>Topics</a></span> 
<ul> 
<li><span class='folder'><a href='?Lang=en&TopicID=1'>Topic 1</a></span> 
<ul> 
<li><span class='file'><a href='?Lang=en&TopicID=1.1'>Topic 1.1</a></span></li> 
<li><span class='file'><a href='?Lang=en&TopicID=1.2'>Topic 1.2</a></span></li> 
<li><span class='file'><a href='?Lang=en&TopicID=1.3'>Topic 1.3</a></span></li> 
</ul> 
</li> 

使用JQuery.load我加載HTML文件,以便生成樹狀視圖

<div id="LtrLeftContent"> 
    <script language="javascript" type="text/javascript"> 
     $('#LtrLeftContent').load('sample.html', function() { 
       $("#topics").treeview(); 
     }); 
    </script> 
</div> 

1號問題:如何找出當前節點文字。當點擊一個樹節點?
第二個問題:如何找出父節點+當前節點文本。當點擊一個樹節點?
第三個問題:如何將CSS設置爲節點。當點擊一個樹節點?

嘗試一些後,我得到當前元素

$("li span").click(function() { 
    alert($(this).text()); 
}); 

的完整代碼像波紋管

<div id="LtrLeftContent"> 
     <script language="javascript" type="text/javascript"> 
      $('#LtrLeftContent').load('sample.html', function() { 
       $("#topics").treeview(); 
       $("li span").click(function() { 
        alert($(this).text()); 
       }); 
      });     
     </script> 
</div> 

回答

0
$('a').live('click', function (e) { 
    e.preventDefault(); 
    console.log($(e.currentTarget).text()); 
    console.log($(e.currentTarget).closest('.folder').text()); 

    // didn't quite get your last question 
    // but this is how you would manipulate 
    // the current elements parent list item 
    $(e.currentTarget).parents('li').css({ 
     'background-color': '#000' 
    }); 
    return false; 
}); 
相關問題