2011-12-13 27 views
8

Şu anda JS Ağaç eklentisi ve ilgili onay kutusu eklentisini kullanarak bazı POC üzerinde çalışıyorum. Ben varsayılan olarak onay kutusunu işaretleyin ve daha fazla selection.I devre dışı bırakmanız gerekir belli düğümler için tamamen ben devre dışı bırakmak için bir yol bulmak istiyorum onay kutusunu gizlemekjstree disable onay kutusu

.bind("load_node.jstree", function (e, data) { 
      $(this).find('li[rel!=file]').find('.jstree-checkbox:first').hide(); 
     }); 

onay kutusu yerine gizleme işlevi bulundu belirli düğümler için onay kutusu

+0

daha undestandable olabilmek için soru yeniden düşünün:

$rel = ('if the checkbox need to be pre-checked')? 'rel="disabled" class="jstree-checked"' : ''; echo '<li id="checkbox_id" '. $rel .'>'; 

Sonra şöyle rel kullanıldı 'devre dışı' türünü tanımlamak gerekir önceki bir yanıta bağlı. – athspk

cevap

10

Bir "devre dışı" türü tanımlamanız gerekir (eklenti türlerini kullanarak) ve sonra bu türü istenen düğüme atayınız. Örneğin

alın bu "devre dışı" türü tanımı:

  "types" : { 
       "types": { 
       "disabled" : { 
         "check_node" : false, 
         "uncheck_node" : false 
        } 
       } 
      } 

ve tip atama:

eklentisi türlerinde

fazla bilgi here bulunabilir ve ayrıca this google group with more info on disabling checkboxes

kontrol edebilirsiniz
$.jstree._reference('#tree').set_type("disabled", "#node5"); 

Umut eder!

1

Cevabınız için teşekkürler mcabral ve Tomasz. Doğru sonuca ulaşmamı sağladı. Ancak, düzgün çalışması için bazı ekstra çizgiler eklemem gerekiyordu. İşte ne yaptım:

Sen <li> etiket wich iki özellik eklemeniz gerekir

bu varsayılan yerine, onay kutusu için yeni tip olacağı jstree belirtmek için rel='disable' ve class='jstree-checked' nitelik edecektir önceden onay olan ağacı yüklerken onay kutuları.

.jstree({ 
        "types" : 
        { 
         "types" : { 
          "disabled" : { 
           "check_node" : false, 
           "uncheck_node" : false 
          } 
         } 
        }, 
     "plugins" : ["themes","html_data","ui","crrm","types", "checkbox"], 
        "checkbox" : { "two_state" : true }, 
    })