2015-01-12 27 views
0

我以爲我已經解決了我的問題,但不是。 我使用普通的調用來加載內容,它的工作方便,快速和罰款。加載調用僅適用於第一個節點,而不是葉子?

$(document).ready(function() { 
     $('#leftmenu').jstree(); 
     $('.jstreelink').click(function(){ 
      alert("Clicked!"); 
      $('#maincontent').load(this.href) 
      return false; 
     }); 
    }); 

    <div id="leftmenu"> 
     <ul> 
      <li>Admin 
       <ul> 
        <li><a class="jstreelink" href="backend/test4.php">task1</a></li> 
        <li><a class="jstreelink" href="backend/test3.php">task2</a></li> 
       </ul> 
      </li> 

      <li>Moderator 
       <ul> 
        <li><a class="jstreelink" href="backend/testp.php">task3</a></li> 
        <li><a class="jstreelink" href="backend/test1.php">task4</a></li> 
       </ul> 
      </li> 

      <li><a class="jstreelink" href="backend/test.php">task5</a></li> 

     </ul> 
     </div> 

我加了一個測試警報,並在任務5單擊時,我只能得到警報。 我嘗試過不同的組合,但是當點擊一片葉子時,什麼也沒有發生。還檢查了Firebug。 重複點擊任務5每次都會觸發警報,並在maincontent div中加載html。

如此看來,這不是一個正常的jQuery的問題,但jsTree一個問題(當然我自己的:))

我使用

jQuery的V2.1.3 jsTree - v3.0.9

在此先感謝您的任何意見。

回答

0

感謝maddin,但我已經找到了解決辦法:

$(document).ready(function() { 
    $('#jstree').jstree(); 
    $('#jstree').on('click', '.jstreelink', function() { 
    $('#maincontent').load(this.href); 
    }); 
}); 
0

試試這個

$('#leftmenu').on("select_node.jstree", function(a,b){ 
    alert(b.node.a_attr.href); 
    $('#maincontent').load(b.node.a_attr.href) 
     return false; 
}); 
相關問題