jquery如何获得表格所在的行数和列数

2024-11-22 22:05:10
推荐回答(5个)
回答(1):

jQuery 提供了index()方法用于获取第一个匹配元素相对于其同胞元素的 index 位置(从0开始计数),基本语法为:$(selector).index()。因此当前 tr 的 index 可以得到行数,当前 td 的 index 可以得到列数。实例演示如下:

1、HTML结构

    

    

    

    

1234
2456
3789
4123

2、jquery代码

$(function(){

    $("table td").click(function() {

        var row = $(this).parent().index() + 1; // 行位置

        var col = $(this).index() + 1; // 列位置

        alert("当前位置:第"+row+"行,第"+col+"列")

    });

}); 

3、效果演示

回答(2):

思路是这样的,你点击一个td,然后找到这个td的父节点tr,然后统计这个tr前面的tr个数,就是行数,而这个td前面的td个数,就是列数



tableTest.html






































1

2

q

t

a

2

q

y

b

2

3

b

c

2

q

4

d

2

q

f


回答(3):

思路是这样的,你点击一个td,然后找到这个td的父节点tr,然后统计这个tr前面的tr个数,就是行数,而这个td前面的td个数,就是列数



tableTest.html






































1

2

q

t

a

2

q

y

b

2

3

b

c

2

q

4

d

2

q

f


回答(4):

思路是这样的,你点击一个td,然后找到这个td的父节点tr,然后统计这个tr前面的tr个数,就是行数,而这个td前面的td个数,就是列数
HTML
PUBLIC
"-//W3C//DTD
HTML
4.01
Transitional//EN">


tableTest.html
http-equiv="Content-Type"
content="text/html;
charset=utf-8"
/>
type="text/javascript"
src="js/jquery.js">
type="text/javascript">
//页面装载就加载函数
$(document).ready(function()
{
//给所有的td单元格绑定一个click事件
//如果这个table的id为table1,那单给table1的所有td加click事件代码为:
//
var
tds
=
$("#table1").find("td");
var
tds
=
$("td");
tds.click(tdclick);
});
function
tdclick()
{
//var
td
=
$(this);
//var
text
=
td.text();
//
$(this)表示这个td单元格,
//
.parent("tr")表示这个td的父节点
//
.prevAll()表示这个tr前面有多少个tr
var
hang
=
$(this).parent("tr").prevAll().length;
var
lie
=
$(this).prevAll().length;
hang
=
Number(hang)+1;//字符串变为数字
lie
=
Number(lie)+1;
alert("第"+hang+"行"+"第"+lie+"列");
}



border="1px"
width="300"
id="table1">


1


2


q


t




a


2


q


y




b


2


3


b




c


2


q


4




d


2


q


f




回答(5):

table的click事件中

var cell = "";
if(navigator.userAgent.indexOf("MSIE") > 0)
cell = event.srcElement;
else
cell = arguments.callee.caller.arguments[0].target;

var col = cell.cellIndex;//列数
var row = row.rowIndex;//行数