2010-05-27 1 views
3

두 번 클릭하면 wysiwyg 편집기를 통해 편집 할 수있는 정렬되지 않은 목록의 목록 항목이 있습니다. 일명 번 폼 요소는 내용의 장소에 교체되었습니다 -jQuery UI의 Sortable이 항목 옵션에 대한 복합 선택자를 처리 할 수 ​​있습니까?

$('ul.mtm_section').sortable({ 
    disabled: true, 
    distance: 10, 
    items: '> li:not(:has(form))' 
}); 

내 목표는 편집하는 동안 분류되는 목록 항목을 방지하는 것입니다.

불행히도 항목의 선택자가 작동하지 않습니다. sortable는 이와 같은 복잡한 선택자를 처리 할 수 ​​있습니까? 그렇지 않다면 콜백 함수와 같은 일부 항목을 정렬 할 수 없게하는 영리한 방법이 있습니까?

wysiwyg 플러그인이 jEditable로 깊이 중첩되어 있고 내가 아는 한 나를 위해 어떤 이벤트도 열지 않기 때문에이 정렬 가능한 옵션을 사용하는 것을 선호합니다. jQuery를 1.4.2 jQuery를 UI 1.8.1

답변

3

jQuery를 UI 정렬 가능한 사용

어떤 선택을 허용하지만, 선택은 정렬이 때 정렬되는 항목을 선택하는 데 사용됩니다 만든-되지 않은 드래그를 시작할 때. DOM을 변경하면 정렬이 생성되었을 때 정렬 가능한 항목이 여전히 기억됩니다.

ui.item<form> 포함되어 있지만이 지금은 작동하지 않을 것 같으면, 당신은 sortstart에서 return false 할 수 있어야한다

; 대신 다음을 사용하십시오.

$('ul').sortable({ 
    items: '> li', 
    cancel: 'li:has(form)' 
}); 
+0

감사합니다. 취소에 대해 알고 있었지만 시도했을 때 코드에 버그가 있었음에 틀림 없습니다. 이것은 나를 위해 일하고있다. liveItemsSelector : true와 같은 옵션을 사용하여 sortable이 "live"jquery 이벤트 후크를 사용하도록하는 옵션의 이점을 얻을 수있는 다른 인스턴스가 있는지 궁금합니다. – jverdi

관련 문제