2016-10-20 3 views
0

다음과 같은 시나리오가 있습니다. 목록과 데이터 테이블 모두에 DnD 기능이 활성화되어 있습니다. 레코드의 ID는 표시되는 데이터의 일부이지만 같은 ID를 가진 항목을 하나의보기에 배치하려고하면 id는 임의로 생성 된 ID가됩니다. 데이터 항목에 대해 copy 작업을 수행하려는 경우 질문 : 대상 데이터 테이블에 이미있는 항목을 복사하지 못하게하는 방법은 무엇입니까?끌어서 놓기로 데이터 복사를 확장하는 방법은 무엇입니까?

여기에 문서의 샘플에 따라 구현 https://jsfiddle.net/gL72d02c/

복사, 내 코드입니다 즉

$$("view").attachEvent("onBeforeDrop", function(context, ev){ 
    for (var i=0; i< context.source.length; i++){ 
     context.from.copy(context.source[i],context.start,this,webix.uid()); 
    } 
    return false; 
}); 

답변

0

당신이해야 할 모든 확인하는 것입니다 여부를 대상 위젯에서 같은 ID exists (문서). 예 :

$$("petTable").attachEvent("onBeforeDrop", function(context, ev){ 
    for (var i=0; i< context.source.length; i++){ 
     if (this.exists(context.source[i])) 
      return false; 
     context.from.copy(context.source[i],context.start,this,webix.uid()); 
    } 
    return false; 
});