Come trovare indicerighe quando si fa clic su un pulsante nella tabella

Voglio trovare la riga che cliccato il pulsante.

<table>
  <tr>
    <td>foo 1</td>
    <td><input  type="button" value="Remove" id="remove1"/> </td>
  </tr>
  <tr>
    <td>foo 2 </td>
    <td><input  type="button" value="Remove" id="remove2"/> </td>
  </tr>
</table>

Mio tavolo struct è come sopra. Normalmente riesco a noi buttonid per ottenere l’indice di riga. Ma Se devo rimuovere una riga (tr) un altro indice di riga modifiche. Per esempio:

Se devo togliere la prima riga con jQuery, secondo l’indice di riga modifiche 0 quindi non posso usare il pulsante id. (rimuovere – 2 )

Beh, penso che devo utilizzare la funzione di padre, ma non funziona.

var elem = $('#remove2');
alert(elem.parent()[0].sectionRowIndex);

Ho provato questo, ma non funziona. Ho bisogno di indice di riga che hanno cliccato il pulsante nella riga.

Spero che ho spiegato il mio problema.

  • u può impostare il nuovo attr come rowid nella tua <input> o il tag <td> tag. poi si può ottenere il valore di simile : $(“#remove1”).attr(“rowid”)
  • Creare righe in modo dinamico, sì, posso impostare un id di righe, ma più vicino funzioni, guarda meglio. grazie
InformationsquelleAutor ertan2002 | 2013-01-01



4 Replies
  1. 15

    Provare questo:

    $("table tr input").on('click', function(e){
       alert($(this).closest('td').parent()[0].sectionRowIndex);
    });​

    VIOLINO

    • Come possiamo scrivere questo codice jsp ?
  2. 5

    Provare a usare questo: http://jsfiddle.net/jd9N4/1/

    var elem = $('input[type="button"]');
    $(elem).click(function() {
       alert($(this).closest('tr').index());
       $(this).closest('tr').remove();
    });
    • Come faccio a destinazione specifica tabella?
  3. 2

    SE si sta aggiungendo la riga in modo dinamico è possibile

     $(document).on('click', 'button', function () {
         var indexRow = this.parentNode.parentNode.rowIndex;
         document.getElementById("table-name").deleteRow(indexRow);
     });
  4. 2

    Non hai bisogno di ID

    $('table').on('click', 'input[value="Remove"]', function(){
      $(this).closest('tr').remove();
    });
    • cosa succede se ho più di una tabella?
    • come faccio a destinazione specifica tabella?
    • utilizzando il tuo ID della tabella all’interno del selettore. Ricordate selettori CSS? io.e: '#myTable input[etc... @codegrid
    • Provato. Ha funzionato. grazie
    • Durante aggiungi riga, ho spinto i valori per la neonata riga in una lista e rimuovere la riga utilizzato giunzione con l’indice di riga da rimuovere dall’elenco. Non funziona correttamente. C’è un modo migliore?
    • di sicuro c’è, utilizzare il .on() metodo con l’evento di delega: $('#myTable').on('click', 'input[value=Remove]', function(){

Lascia un commento