2013-09-18 2 views
1

У меня есть следующая таблица, которая возвращает значение каждой ячейки при нажатии с помощью javascript?Как получить значения ячейки таблицы в любом месте в таблице с помощью jquery

Как я могу сделать то же самое с помощью jquery?

<script language="javascript"> 

     var tbl = document.getElementById("tblMain"); 
     if (tbl != null) { 
      for (var i = 0; i < tbl.rows.length; i++) { 
       for (var j = 0; j < tbl.rows[i].cells.length; j++) 
        tbl.rows[i].cells[j].onclick = function() { getval(this); }; 
      } 
     } 

     function getval(cel) { 
      alert(cel.innerHTML); 
     } 
    </script> 

<table align="center" id="tblMain" border="1" style="cursor: pointer;"> 
     <tr> 
      <td> 
       R1C1 
      </td> 
      <td> 
       R1C2 
      </td> 
      <td> 
       R1C3 
      </td> 
      <td> 
       R1C4 
      </td> 
     </tr> 
     <tr> 
      <td> 
       R2C1 
      </td> 
      <td> 
       R2C2 
      </td> 
      <td> 
       R2C3 
      </td> 
      <td> 
       R2C4 
      </td> 
     </tr> 
     <tr> 
      <td> 
       R3C1 
      </td> 
      <td> 
       R3C2 
      </td> 
      <td> 
       R3C3 
      </td> 
      <td> 
       R3C4 
      </td> 
     </tr> 
     <tr> 
      <td> 
       R4C1 
      </td> 
      <td> 
       R4C2 
      </td> 
      <td> 
       R4C3 
      </td> 
      <td> 
       R4C4 
      </td> 
     </tr> 
    </table> 
+0

Подробные статьи о 4 способах получения значений ячейки таблицы https://codepedia.info/jquery-get-table-cell-td-value-div/ –

ответ

0

Как насчет:

$("#tblMain tr td").click(function() { 
    var content = $(this).text(); 
    console.log(content); //Cell text 
}); 
0

Попробуйте с:

$(document).ready(function(){ 

    var getval = function(html) { 
    alert(html); 
    } 

    $('#tblMain td').on('click', function(){ 
    getval($(this).html()); 
    }); 
}); 
+1

Используйте '.on()' вместо '.bind() '. Или просто '.click()'. – j08691

+0

@ j08691 Изменено. – hsz

0

Попробуйте это:

$(function() { 
    $('#tblMain td').click(function() { 
     alert($(this).html()); // or .text() 
    }); 
}); 

JQuery будет внутренне перебрать все клетки для вас, так что вам не нужно никакого зацикливания кода вообще.

Смежные вопросы