如何用JS中的循环分别取得各个td中的数据

如何用JS中的循环分别取得各个td中的数据,第1张

jquery 版的

$(document)ready(function(){

var st1r="";

$("td")each(function(){ st1r+=$(this)html()+",";alert( st1r)})

});

这个是通过判断里面是否有td ,如果有td,都提取里面的值。

1、JS获取表格的简便方法:获取tbody:tBodies 获取thead:tHead 获取tfoot:tFoot 获取行tr:rows 获取列td:cells

使用实例: oTabletBodies[0] oTabletHead[0] oTabletFoot[0] oTablerows[1] oTablecells[1]

2、遍历

var oTable=documentgetElementById("表格id");

oTabletBodies[0]可以看成是rows和cells组成的二维数组,用两个for循环嵌套遍历一下就可以了

<table border="1">

<tr>

<td colspan="2"><a onClick="alert(thisparentNodeparentNoderowIndex)">xxxx</a></td>

</tr>

<tr>

<td><a onClick="alert(thisparentNodecellIndex)">xxxx</a></td> <td><a onClick="alert(thisparentNodecellIndex)">xxxx</a></td>

</tr>

<tr>

<td colspan="2"><a onClick="alert(thisparentNodeparentNoderowIndex)">xxxx</a></td>

</tr>

</table>

这个用jquery很容易的 $("tr")find("td")eq(7)就是获得当前行的第八列

原生态js写法是 windoweventsrcElementparentElementparentElementchildNodes获得所有的td 循环一下就行了

jQuery 遍历的 eq() 方法将匹配元素集缩减值指定 index 上的一个,index表示元素的位置(最小为 0)。所以获取Table第 i 行第 j 列的内容可用如下代码

$("table")find("tr")eq(i-1)find("td")eq(j-1)text(); // 注意-1是因为index从0开始计数。

<div class="box"><span>填写行列数,点击按钮后获取对应位置的数值:</span><div class="content"><table><tr><td>1</td><td>2</td><td>3</td></tr><tr><td>4</td><td>5</td><td>6</td></tr><tr><td>7</td><td>8</td><td>9</td></tr></table></div>    

第<input type="text" name="row">行,第<input type="text" name="col">列<input type="button" class="btn" value="确定"></div>

添加css样式

divbox{width:300px;height:250px;padding:10px 20px;border:4px dashed #ccc;}

divbox>span{color:#999;font-style:italic;}

divcontent{width:250px;height:100px;margin:10px 0;padding:5px 20px;border:2px solid #ff6666;}

input[type='text']{width:35px;height:30px;border:1px solid #99ccff;}

input[type='button']{width:100px;height:30px;margin:10px;border:2px solid #ebbcbe;}

selected{background:#99ccff;}

table{border-collapse:collapse;}

td{padding:5px 10px;border:1px solid green;}。

你这段js放在哪的?如果在head里,dom都没有加载完,他就执行了,当然找不到相应的元素了。。。所以要写在加载事件之后。。。

windowonload = function() {

    var kkk = documentgetElementById('kkk'),

        qwe = documentgetElementById('qwe');

    if (kkkinnerText == "qqq") {

        kkkstyledisplay = "none";

    }

    if (qweinnerText == "qqq") {

        qwestyledisplay = "none";

    }

}

另外,一般会有个触发机制,上边这样写是能实现的,但是真正用的时候肯定不这么写

<BODY>

<table>

<tr><td>11</td><td

>12</td><td>13</td></tr>

<tr><td>21</td><td

>22</td><td>23</td></tr>

<tr><td>31</td><td

>32</td><td>33</td></tr>

</table>

</BODY>

<script>

//

tr:eq(0)

取第一行

td:eq(2)

取第三列

//$("tr:eq(0)

td:eq(2)")text()

得到:13

//$("tr:eq(1)

td:eq(1)")text()

得到:22

alert($("tr:eq(0)

td:eq(2)")text());

</script>

行和列你可以用变量代替!

请采纳,谢谢!

var a=documentgetElementById("table")getElementsByTagName("td")

for (var i=0;i<alength;i++) {

alert(a[i]id)

}

这是js的写法 jquery比较方便 $("table td")attr("id")

以上就是关于如何用JS中的循环分别取得各个td中的数据全部的内容,包括:如何用JS中的循环分别取得各个td中的数据、在js中怎样获取当前页面表格中的数据、谁帮我解答一下,通过js(jquery也行)怎么获取<a>所在td的行和列等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9830670.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存