2010-05-04 1 views
0

Я начал со стандартного дерева drag-and-drop drag-and-drag, и все работает отлично.Rails - как сериализовать дерево не в форме

Затем приступили к реализации этого: http://www.artweb-design.de/2008/5/30/scriptaculous-sortabletree , который дает хорошее сопротивление и падение дерева

Где я застрял, как получить сериализовать дерево (неупорядоченный список)? Он не в форме, и я не могу найти способ его сериализации, чтобы перейти к настройке обновления AJAX.

ответ

0

Хорошо, вот ответ, который я разработал, в случае, если кто-то еще должен иметь дело с этим. Конечно, есть лучший способ сделать это и т. Д.

function walk_tree(node, parent_stem, at_root) { 

    if (node == null || node == undefined || $(node) == undefined) 
     return ; 

    var i = 0 ; 
    var serialized_tree = '' ; 
    var stem = '' ; 

    // loop through siblings 
    do { 

     // build up the serialized statement for this node 
     stem = parent_stem + '[' + i + ']' ; 
     serialized_tree += (at_root ? '' : '&') + stem + '[id]=' + $(node).identify().gsub('page_','') 

     // if node has children, then recurse... 
     if ($(node).down('li') != undefined) 
      serialized_tree += walk_tree($(node).down('li'), stem, false) ; 

     // carry on finding siblings 
     node = $(node).next('li') ; 
     i++ ; 
    } while ($(node) != undefined) ; 

    return(serialized_tree) ; 

} ; 

 Смежные вопросы

  • Нет связанных вопросов^_^