javascript - ¿Cuál es la mejor manera de eliminar una fila de la tabla con jQuery?



8 Answers

$('#myTable tr').click(function(){
    $(this).remove();
    return false;
});
javascript jquery html-table

¿Cuál es el mejor método para eliminar una fila de la tabla con jQuery?




Puedes usar:

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

para encontrar la fila de la tabla padre de un elemento.

Es más elegante que parent (). Parent () que es lo que empecé a hacer y pronto aprendí el error de mis maneras.

--Editar - Alguien señaló que la pregunta era sobre eliminar la fila ...

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

Como se indica a continuación, simplemente puede hacer:

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

Se puede usar un fragmento de código similar para muchas operaciones, como disparar eventos en múltiples elementos.




Todo lo que tiene que hacer es eliminar la etiqueta de la fila de la tabla ( <tr> ) de su tabla. Por ejemplo, aquí está el código para eliminar la última fila de la tabla:

$('#myTable tr:last').remove();

* El código de arriba fue tomado de esta publicación de jQuery Howto .




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

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

Tal vez algo como esto podría funcionar también? No he intentado hacer algo con "esto", así que no sé si funciona o no.




Otro por empty() :

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



$('tr').click(function()
 {
  $(this).remove();
 });

Creo que intentará el código anterior, ya que funciona, pero no sé por qué funciona durante algún tiempo y luego se elimina toda la tabla. También estoy tratando de eliminar la fila haciendo clic en la fila. pero no pudo encontrar la respuesta exacta.




Aprecio que este es un post antiguo, pero buscaba hacer lo mismo y descubrí que la respuesta aceptada no me funcionó. Suponiendo que JQuery se haya movido desde que esto fue escrito.

De todos modos, encontré lo siguiente trabajado para mí:

$('#resultstbl tr[id=nameoftr]').remove();

No estoy seguro si esto ayuda a alguien. Mi ejemplo anterior era parte de una función más grande, por lo que no estaba envuelto en un detector de eventos.




ID no es un buen selector ahora. Puede definir algunas propiedades en las filas. Y puedes usarlos como selector.

<tr category="petshop" type="fish"><td>little fish</td></tr>
<tr category="petshop" type="dog"><td>little dog</td></tr>
<tr category="toys" type="lego"><td>lego starwars</td></tr>

y puede usar una función para seleccionar la fila como esta (ES6):

const rowRemover = (category,type)=>{
   $(`tr[category=${category}][type=${type}]`).remove();
}

rowRemover('petshot','fish');



Related