Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.07.2012, 22:52
Аспирант
Отправить личное сообщение для seregarem Посмотреть профиль Найти все сообщения от seregarem
 
Регистрация: 08.07.2010
Сообщений: 46

Как загрузить данные из БД в jsPlumb
Подскажите, как загрузить элементы схемы в jsPlumb из БД, а потом сохранить обратно в БД? Как динамически добавлять объекты в jsPlumb?
Ответить с цитированием
  #2 (permalink)  
Старый 26.10.2012, 23:15
Новичок на форуме
Отправить личное сообщение для hgirk Посмотреть профиль Найти все сообщения от hgirk
 
Регистрация: 26.10.2012
Сообщений: 1

очень актуальная тема. Жду ответ от PRO
Ответить с цитированием
  #3 (permalink)  
Старый 28.10.2012, 14:29
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

Официальная,точка зрения никак. Плагин отвечает только за отображение соединений и хранением данных не занимается.

предлагается создать свою модель, и менять её взависимости от событий. к примеру.
jsPlumb.bind("jsPlumbConnection", function(connectionInfo) {
     //обновляем модель при добавлении соединения
});

jsPlumb.bind("jsPlumbConnectionDetached", function(connectionInfo) {
       //обновляем модель при удалении
});


и это наверноее самое правильное решение.

А если думать неправильно, то очевидно что плагин должен гдето хранить список связей чтобы их перерисовывать.

извлечь эту инфу никакого труда непредставляет хотя бы при помощи jsPlumb.getConnections /jsPlumb.getAllConnections, пример использования


думаю по результату должно получится что то вроде
образец json
{
   // спиок нод
   nodes:[],
   // список соединений
   connections:[]
}

псевдокод сериализации и сохранения данных
function save(){
var presave={nodes:[],connections:[]}
$(".nodes").each(function(){
     presave.nodes.push( {
             x:$(this).offset().left,
             y:$(this).offset().top
             //другая инфа
     })
});
var conn=jsPlumb.getAllConnections();
for(var i=0;i<conn;i++){
     presave.coonections.push({
         target:conn[i].target...
         source:conn[i].source...
         //ещё какая то инфа 
     });
}
// здесь можно извлечь чонибудь полезное ещё, что именно решайте сами 
// в javascript практически всегда можно достать любые данные, исключения разве что переменные в замыканиях

$.post("url",presave);
}

Но хранить подобные данные в дум без модели, сомнительная идея.
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 28.10.2012 в 15:53.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сохранить данные в файл? Возможно такое на JavaScript? Forgott Общие вопросы Javascript 35 26.06.2015 19:11
Контекстное меню как считать данные из таблицы xela1980 jQuery 25 31.05.2013 14:20
Как сохранить данные из формы? Alex Danilov ExtJS 1 10.06.2012 00:53
Как используя deffered в цикле последовательно загрузить скрипты? wwwboy jQuery 1 07.12.2011 09:39
как получить себе данные с другой страницы? DemonStore Общие вопросы Javascript 4 10.05.2011 17:52