错误出在documentgetElementById(dd)
因为页面上id为2的出现了多个,而这样获取只会取到第一个,所以tr始终为相应的第1个
按照你的写法,用dd来保存tr的行数比较好,即i值。
然后通过documentalltable1rows(i)id来获取tr的id值。
在a标签上写个class,用jq写的
$("a标签的class")click(function(){
var text = $(this)parent("td")siblings("td")text();
alert(text)
})
javascript中可以通过documentGetElementByID(你要获取的那个列的ID号,在上述代码中是<p>标记中的ID号)就可以获取你的这个元素,然后通过Innertext就可以获取里面的值了。
documentgetElementById("tr")innerHTML
这句改成
documentgetElementsByTagName("tr")[0]innerHTML
这个[0]就表示第一个TR,[1]表示第二个。
因为getElementsByTagName返回的是一个数组
getElementById只是获取id属性值为"tr"的标签
getElementsByTagName可以获取标签名为"tr"的一个数组。
PS:注意getElementsByTagName中Element后面有个s
哦没有注意你的错误提示。因为innerHTML对table表格的兼容性很差。所以在table里尽量避免用这个。。。你在外面加个DIV。然后在DIV里面去改就可以了
是在列表中点击某一行,能获取该行的详细信息吧?
1、可以获取该行的ID,到数据库查一遍,把结果返回到页面。
2、在当前行<tr>里加一个ID,如:content+"_"+i
i为循环时每行数据的ID,点击时,将TR的ID传入JS,如:
documentgetElementById('content5')innerHTML=aaa;再获取每个节点的值
表格的第一行为thead中的th
剩下的数据放到tbody中
最后那一行添加的放到tfoot中
对tbody下面的所有tr绑定一个点击事件
事件中获取这个tr下的所有td,就可以获取这行的数据了
大概代码如下:
var trs =documentgetElementById("tbodyId")getElementsByTagName("tr");
for(int i=0;i<=trslength;i++)
{
var tr = trs[i];
var tds=trgetElementsByTagName("td");
//下面遍历tds就可以去获取数据了
//把数据放到下面的表单就好了
//然后提交数据,在服务端进行修改
}
<table id="tb1" width="200" border="1" cellpadding="4" cellspacing="0">
<tr>
<td height="25">第一行</td>
</tr>
<tr>
<td height="25">第二行</td>
</tr>
<tr>
<td height="25">第三行</td>
</tr>
<tr>
<td height="25">第四行</td>
</tr>
<tr>
<td height="25"><input type="button" name="getTableContent" value="获得表格内容" onclick="getTableContent(this)"></td>
</tr>
</table>
如上所示代码,按钮点击事件中传入this对象,此对象就是按钮本身。通过以下方法测试获取表格的数据
<script language="javascript">
function getTableContent(node) {
// 按钮的父节点的父节点是tr。
var tr1 = nodeparentNodeparentNode;
alert(tr1rowIndex);
alert(tr1cells[0]childNodes[0]value); //获取的方法一
alert(tr1cells[0]innerText);
// 通过以下方式找到table对象,在获取tr,td。然后获取td的html内容
var table = documentgetElementById("tb1");//获取第一个表格
var child = tablegetElementsByTagName("tr")[rowIndex - 1];//获取行的第一个单元格
var text = childfirstChildinnerHTML;
windowalert("表格第" + rowIndex + "的内容为: " + text);
}
</script>
这个用jquery很容易的 $("tr")find("td")eq(7)就是获得当前行的第八列
原生态js写法是 windoweventsrcElementparentElementparentElementchildNodes获得所有的td 循环一下就行了
以上就是关于js 通过td的id值 如何拿到tr的id值(动态获取)全部的内容,包括:js 通过td的id值 如何拿到tr的id值(动态获取)、js获取table当前tr行第二列td的值、在javascript怎么得到table单元格中的值或内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)