2014-02-10 4 views
0

enter image description hereКак получить метки точек в соединении JSPLUMB?

В прилагаемой схеме подключены div 1 и div 3. На соединении есть метка, обозначающая 1-3 (что связано с подключением div 1 и div 3). Теперь, когда я нажимаю кнопку, я хочу отобразить имя метки конечной точки, например, это «Перетаскивание», а не div id «1-3».

В оболочке ореха, во время getAllConnections(), Как получить имена ярлыков конечных точек в соединении?

ответ

0

Как уже упоминалось, первые получают все соединения и для каждого соединения получают свои конечные точки и от него вы можете получить его метку:

var con=jsPlumb.getAllConnections(); 
for(var i=0;i<con.length;i++){ 
    var e=con[i].endpoints; // Array of [source, target] Endpoint objects. 
    var label1=e[0].getLabel(); 
    var label2=e[1].getLabel(); 
    console.log(label1+"->"+label2); 
} 

Для более Refre API DOC. Надеюсь это поможет!

+0

Это похоже только эхо null-> null –

+0

@NickMitchell Создайте jsFiddle, чтобы помочь вам быстрее! – MrNobody

0

Предполагая, что вы оверлеи как этот

endpoint.overlays = [["Label", { 
      location: [0.5, 2.5], 
      label: "1-3", 
      id: 'myLabel' 
     }]]; 

вы просто сделать:

endpoint.getOverlay("myLabel").getLabel() 
0

Предполагая, что вы создали "Drag", "Капля" метки в виде наложений следующим образом:

overlays: [ 
    [ "Label", { 
     location: [0.5, 1.5], 
     label: "Drag", 
     visible:true, 
     id: "drag" 
    } ] 
] 

вы можете получить конечную точку источника соединения, используя connection.endpoints[0]. Чтобы получить значение метки этой конечной точки, вы можете просто позвонить connection.endpoints[0].getOverlay("drag").getLabel();.

Вы можете получить объекты связи перебором jsPlumb.getConnections(), как следующее:

$.each(instance.getConnections(), function (index, connection) { 
}); 

Это работает для меня. Надеюсь, что это поможет вам!

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