[javascript] jQuery로 테이블 행을 제거하는 가장 좋은 방법은 무엇입니까?

jQuery로 테이블 행을 제거하는 가장 좋은 방법은 무엇입니까?



답변

네가 옳아:

$('#myTableRow').remove();

행에 다음 id과 같은 이 있으면 제대로 작동합니다 .

<tr id="myTableRow"><td>blah</td></tr>

이 없으면 idjQuery의 다양한 셀렉터를 사용할 수 있습니다 .


답변

$('#myTable tr').click(function(){
    $(this).remove();
    return false;
});

더 나은 것

$("#MyTable").on("click", "#DeleteButton", function() {
   $(this).closest("tr").remove();
});


답변

테이블의 데이터 셀 안에 버튼 / 링크가 있다고 가정하면 이와 같은 방법으로 트릭을 수행 할 수 있습니다 …

$(".delete").live('click', function(event) {
    $(this).parent().parent().remove();
});

클릭 한 버튼 / 링크의 부모의 부모가 제거됩니다. 부모 ()는 일반적인 DOM 객체가 아닌 jQuery 객체이기 때문에 parent ()를 사용해야하며 버튼이 행 안에있는 데이터 셀 안에 있기 때문에 parent ()를 두 번 사용해야합니다. 당신이 제거하고 싶은 것. $ (this)는 버튼을 클릭 한 것이므로 다음과 같이하면 버튼 만 제거됩니다.

$(this).remove();

데이터 셀이 제거되는 동안 :

    $(this).parent().remove();

행의 아무 곳이나 클릭하여 간단하게 제거하려면 다음과 같이하십시오. 이 메시지를 쉽게 수정하여 사용자에게 프롬프트하거나 두 번 클릭하여 작업 할 수 있습니다.

$(".delete").live('click', function(event) {
    $(this).parent().remove();
});

그것이 도움이 되길 바랍니다 … 나는 이것에 조금 어려움을 겪었습니다.


답변

당신이 사용할 수있는:

$($(this).closest("tr"))

요소의 부모 테이블 행을 찾는 데 사용됩니다.

부모 (). 부모 ()보다 더 우아합니다.

-편집-누군가 행을 제거하는 것에 대한 질문이라고 지적했습니다.

$($(this).closest("tr")).remove()

아래에서 지적했듯이 간단하게 수행 할 수 있습니다.

$(this).closest('tr').remove();

여러 요소에서 발생하는 이벤트와 같은 많은 작업에 유사한 코드 스 니펫을 사용할 수 있습니다.


답변

쉬운 .. 이것을보십시오

$("table td img.delete").click(function () {
    $(this).parent().parent().parent().fadeTo(400, 0, function () {
        $(this).remove();
    });
    return false;
});


답변

다음이 허용됩니다.

$('#myTableRow').remove();


답변

function removeRow(row) {
    $(row).remove();
}

<tr onmousedown="removeRow(this)"><td>Foo</td></tr>

아마도 이런 식으로도 효과가 있습니까? 나는 “this”로 무언가를 시도하지 않았으므로 그것이 작동하는지 아닌지를 모른다.