2011-09-16 11 views
2

지금 jQuery 인라인 스크립트를 사용하고 있습니다. 삭제 옵션을 추가하면 DOM에서 페이드 아웃되고 제거됩니다. 지금 당장은 데이터베이스에 연결하지 않고 VIN 디코더를 사용하므로 기본 기능입니다.jQuery jQuery로 목록 항목 제거, DOM에서 삭제

아래 제공된 코드는 물론 모든 단일 목록 항목을 삭제합니다. "삭제"를 클릭 한 목록 항목 만 삭제하고 싶습니다. 고유 한 클래스 나 다른 것이 없기 때문에이를 수행하는 방법을 잘 모르겠습니다.

enter image description here

jQuery를 코드 :

// plugin defaults 
$.inlineEdit.defaults = { 
    hover: 'ui-state-hover', 
    value: '', 
    save: '', 
    buttons: '<button class="save">save</button> <button class="cancel">cancel</button> <a href="#" class="delete">delete</a>', 
    placeholder: 'Click to edit', 
    control: 'input', 
    cancelOnBlur: false, 
    saveOnBlur: false 
}; 

.find('a.delete') 
      .bind('click', function(event) { 

       $("li.editable").fadeOut(300, function() { 
        $(this).remove(); 
       }); 

       return false; 
      }) 
     .end() 
+0

생성 된 'html'을 게시하여 구조에 대한 더 나은 아이디어를 얻을 수 있습니까? – Jack

+0

아래의 답변이 맞지만 완전한 코드를 제공하지 않았을 것입니다.'.find ('a.delete')'는 아마도 객체를 생성하지 못할 것입니다. – vol7ron

답변

4

그냥 $(this).closest("li.editable")$("li.editable")을 대체 당신도 잘해야합니다.

+0

Perfect. 정말 고마워. – Drew

+0

예. '.editable '도 필요 없다. 간단한 $ (this) .closest ('li ')는 – vol7ron

+0

빠른 질문을 할 것이다. 생성 된리스트는 당연히 다른 색상으로 짝수 및 홀수 행 클래스를가집니다. 중간에 하나를 지우면 지금 같은 색이 2 개 있습니다. 그 주위에 어떤 방법이 있습니까? 필요한 경우 더 많은 코드를 게시 할 수 있습니다. – Drew