2011-05-20 18 views
5

Şu anda bir ağaç oluşturmak için dynaTree jQuery eklentisini kullanıyorum.dynaTree jQuery eklentisinde köprüler nasıl tıklanabilir?

<div id="tree" style="height:100px;"> 

<ul class="expanded"> 

    <li class="expanded" id="shtml_1" > 
     <a class="ajaxify" href="jsTree.html" >Root node 1</a> 
     <ul> 
      <li id="shtml_2"> 
       <a href="#">Child node 1</a> 
       <ul> 
       <li id="a"><a href="#">Child node 1-1</a></li> 
       <li id="x"><a href="b">Child node 1-2</a></li> 
       </ul> 
      </li>    
      <li id="c"><a href="#">Child node 2</a></li> 
     </ul> 
    </li> 
    <li id="shtml_4"> 
     <a href="#">Root node 2</a> 
    </li> 
</ul> 

JavaScript -

$('.ajaxify').ajaxify({ 
    target: '#container' 
    }); 

    $(function(){ 
    $("#tree").dynatree({ 
     title: "Sample Theming", 
     // Image folder used for data.icon attribute. 
     imagePath: "skin-custom/", 
     onSelect: function(node) { 
     alert ("You selected " + node); 
     } 
    }); 
    }); 

Şimdi ben

  • Kullanım jQuery Ajaxify eklenti (http://max.jsrhost.com/ajaxify/demo istiyorum. php) böylece kullanıcı herhangi bir düğüme tıkladığında ajax çağrısı yapılır ve sonuçlar bir div'a yüklenir.

Ya

  • jquery ile bağlantı etiketlerine Bind i onclick ajax istekleri yapabilmeniz.

Artık dynaTree'yi her kullanışımda varsayılan davranışı geçersiz kılar ve bağlantı etiketinin tıklatılmasını engeller. Bunun nasıl yapılabileceği hakkında bir fikrin var mı?

cevap

8

Dynatree varsayılan olarak <a> etiketlerini kaldırır, nedenle OnActivate işleyicisi uygulamak possbly kolaydır:

onActivate: function(node) { 
    if(node.data.href){ 
     // use href and target attributes: 
     window.location.href = node.data.href; 
//  window.open(node.data.href, node.data.target); 
//  $("#div").load(node.data.href); 
    } 
} 

sürümü 1.1.2 ile başlayarak, Dynatree href ve target<a> etiketinden doğrudan niteliklerini kullanacak : eski sürümlerinde

<li id="x"><a href="b">Child node 1-2</a></li> 

bunu gibi href ayarlamak zorunda:

<li id="x" data="href: 'b'"><a href="b">Child node 1-2</a></li> 
+0

Teşekkürler. Ajaxify gibi bir eklentiyle nasıl bütünleştirebileceğimize dair herhangi bir düşünce var mı? – Pushkar

+0

Asla Ajaxify kullanmamıştım, ancak kendi sayfalarında bir 'Demo' ('Flexigrid' ile etkileşimde bulunma) '' '' '' '' '' '' '' '' '' '' '' '' '' '' yazdı. – mar10

+0

Maalesef dynaTree ile çalışmıyor. Yani tamamen Ajaxify kullanma fikrini bırakmak ve sürüm yorumu için dynaTree – Pushkar

İlgili konular