nestable.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. //[Javascript]
  2. $(function () {
  3. "use strict";
  4. // Nestable
  5. $(document).ready(function () {
  6. // Nestable
  7. var updateOutput = function (e) {
  8. var list = e.length ? e : $(e.target)
  9. , output = list.data('output');
  10. if (window.JSON) {
  11. output.val(window.JSON.stringify(list.nestable('serialize'))); //, null, 2));
  12. }
  13. else {
  14. output.val('JSON browser support required for this demo.');
  15. }
  16. };
  17. $('#nestable').nestable({
  18. group: 1
  19. }).on('change', updateOutput);
  20. $('#nestable2').nestable({
  21. group: 1
  22. }).on('change', updateOutput);
  23. updateOutput($('#nestable').data('output', $('#nestable-output')));
  24. updateOutput($('#nestable2').data('output', $('#nestable2-output')));
  25. $('#nestable-menu').on('click', function (e) {
  26. var target = $(e.target)
  27. , action = target.data('action');
  28. if (action === 'expand-all') {
  29. $('.dd').nestable('expandAll');
  30. }
  31. if (action === 'collapse-all') {
  32. $('.dd').nestable('collapseAll');
  33. }
  34. });
  35. $('#nestable-menu').nestable();
  36. });
  37. }); // End of use strict