求一个JS对Table的查询操作

wsonline 2010-10-27 04:16:46

<HTML>
<HEAD>

<SCRIPT LANGUAGE="JavaScript">
function aaaa()
{
var r = document.all.table1.children;
for(var i=0; i<r.length; i++)
{
alert(r[i].tagName);
if(r[i].tagName=="TBODY")
{
var trs = r[i].children;
for(var j=0; j<trs.length; j++)
{
var aa =trs[j].children
for(k=0;k<aa.length;k++)
{
alert(aa[k].innerHTML);
}
}
}
}

}
</SCRIPT>
</HEAD>

<BODY>

<table width = "20%" border = "1" id="table1">
<tr>
<td >
1
</td>
<td >
未完成
</td>
<td >
<a href="#">修改</a>
</td>
</tr>
<tr>
<td >
2
</td>
<td >
已完成
</td>
<td >
<a href="#">修改</a>
</td>
</tr>
</table>

<input type = button onclick="aaaa();" value=aaaa>

</BODY>
</HTML>


当点击按钮时 判断如果表格中的列是已完成的 请让修改不可用(disabled=true)
...全文
404 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mr-Jee 2010-10-27
  • 打赏
  • 举报
回复
if(rows[i].cells[7].innerHTML.replace(/[ \s]/g,"") == "未开始") =>
if(rows[i].cells.length==9 && rows[i].cells[7].innerHTML.replace(/\s/g,"") == "未开始")
wsonline 2010-10-27
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 cj205 的回复:]
JScript code
function checkHaveNoCompleteTask()
{

var table = document.getElementById("table1");

var rows = table.rows;
for(var i=2; i<rows.length; i++) {
if(rows[i].cells[7].innerHTML……
[/Quote]


虽然这样是实现了 但是我底下有分页 当走到那一合并行时 会报错 看着不舒服

能否判断当前行<td 中是否有colspan 如果有跳过去不走

可以判断吗 怎么写
wsonline 2010-10-27
  • 打赏
  • 举报
回复
有人知道 javascript 如何判断当前行是不是合并行呢
wsonline 2010-10-27
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 cj205 的回复:]
提示下 a是没有disabled


JScript code
function aaaa() {
var table = document.getElementById("table1");
var rows = table.rows;
for(var i=0; i<rows.length; i++) {
if(rows[i].c……
[/Quote]

如果表格中有 “合并列” 怎么判断或解决呢??? 在线等

另外 文字可以设置disable吗
Mr-Jee 2010-10-27
  • 打赏
  • 举报
回复
  function checkHaveNoCompleteTask()
{

var table = document.getElementById("table1");

var rows = table.rows;
for(var i=2; i<rows.length; i++) {
if(rows[i].cells[7].innerHTML.replace(/[ \s]/g,"") == "未开始") {

rows[i].cells[8].getElementsByTagName("a")[0].style.display = "none";//你去操作吧
}
}
}
wsonline 2010-10-27
  • 打赏
  • 举报
回复
高手给看一下 为什么会报错呢 是因为有合并列吗







<html>
<head>
<title></title>


<script language="JavaScript">

function checkHaveNoCompleteTask()
{

var table = document.getElementById("table1");
var rows = table.rows;
for(var i=0; i<rows.length; i++) {
if(rows[i].cells[7].innerHTML.replace(/\s/g,"") == "未开始") {
rows[i].cells[8].getElementsByTagName("a")[0].style.display = "none";//你去操作吧
}
}
}
</script>
</head>
<body onload="checkHaveNoCompleteTask();">

<table border="1" align="left" id="table1">
<tr><td colspan="9" align="center">
<b><font size='4'>任务列表</font></b>
</td></tr>


<tr>
<td><b>序号</b></td><td><b>任务所属项目</b></td><td><b>任务模块</b></td><td><b>任务所属人</b></td><td><b>工作职能</b></td> <td> <b>任务开始日期</b> </td> <td> <b>预计交付日

期 </b></td><td> <b>任务状态 </b></td><td> <b>修改任务状态 </b></td>
<!---->
</tr>

<tr>
<td> 1</td><td> 项目1</td><td> 登录模块</td><td> <font color="red">张山</font></td><td> Web制作</td> <td>   2010-10-01</td> <td>  2010-10

-31</td><td> 未开始 </td><td><a href="#">修改任务状态</a></td>

</tr>


</table>
</body>
</html>

wsonline 2010-10-27
  • 打赏
  • 举报
回复
就判断table中如果当前行第2列 是“已完成” 让修改不可用了 disabled=true

怎么写 请各位指教
Mr-Jee 2010-10-27
  • 打赏
  • 举报
回复
提示下 a是没有disabled

function aaaa() {  
var table = document.getElementById("table1");
var rows = table.rows;
for(var i=0; i<rows.length; i++) {
if(rows[i].cells[1].innerHTML.replace(/\s/g,"") == "已完成") {
rows[i].cells[2].getElementsByTagName("a")[0].style.display = "none";//你去操作吧
}
}
}
wsonline 2010-10-27
  • 打赏
  • 举报
回复
我写的那个jS有问题 求高手写个简便点的
wsonline 2010-10-27
  • 打赏
  • 举报
回复
没什么意思 当硬编码就行 判断它就行 这是小例子 我主要用它做别的用 求解! 在线等
shaoliang520xi 2010-10-27
  • 打赏
  • 举报
回复
已完成的是什么意思,没太看懂噢。

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧