如何使用jquery获取表格单元格值在表格中的任何位置

时间:2013-09-18 13:55:50

标签: jquery

我有下表在使用javascript点击时返回每个单元格值?

我如何使用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>

4 个答案:

答案 0 :(得分:2)

试试这个:

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

生活演示:http://jsfiddle.net/pf5cL/

答案 1 :(得分:0)

怎么样:

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

答案 2 :(得分:0)

尝试:

$(document).ready(function(){

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

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

答案 3 :(得分:0)

试试这个:

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

jQuery将在内部迭代遍历所有单元格,因此您根本不需要任何循环代码。