禁用表中的行单击
Disable row click in table
本文关键字:单击 更新时间:2023-09-26
我想根据列中设置的标志值禁用行点击其余的行应该可以点击,也可以在某些列之间点击
具有true的前两行应该是不可擦除的。但是,其余的行应该可以从第1-5列中单击。
这是链接
提取行中最后一个单元格的.filter
并测试它:
$('#table tr').find('td:gt(0):lt(5)').on("click", function() {
if ($(this).closest('tr').find('td:eq(5)').text() != "true") {
alert("hello");
}
});
http://jsfiddle.net/mblase75/mEbUG/2/
或者,您可以在调用CCD_4:之前.on("click")
清除不需要的单元格
$('#table tr').find('td:gt(0):lt(5)').filter(function() {
return ($(this).closest('tr').find('td:eq(5)').text() != "true");
}).on('click', function() {
alert("hello");
});
http://jsfiddle.net/mblase75/mEbUG/12/
如果我理解正确的话。你只想让没有"true"单元格的行可以点击吗?还是希望每个单元格都可以点击,但不希望带有"true"的单元格可以点击?
这里有一个例子,只有在没有包含单词"true"的单元格的情况下,行才可以点击:
var hasTrueCell = function(cells) {
for (var x = 0; x < cells.length; x++) {
if (cells[x].innerHTML == "true")
return true;
}
return false;
}
var table = document.getElementById("table");
var rows = table.getElementsByTagName("TR");
for (var x = 0; x < rows.length; x++) {
if (!hasTrueCell(rows[x].childNodes))
rows[x].onclick = function() {
alert("hello");
}
}
编辑(评论后)
现在,这应该奏效了。
$('#table tr').filter(function() {
return $(this).find('td:contains("true")').length === 0;
}).click(function() {
alert("hello");
});
演示
参考
$('#table tr').find('td:gt(0):lt(5)').click(function(){if($(this).text()!="true")alert(1)})
相关文章:
- 使用clickToggle并在单击另一个元素时关闭元素
- 单击时将焦点更改为元素
- 单击F5时如何停止页面加载
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 单击jquery清除输入值
- 单击按钮以等待单击按钮
- 在单击href链接的同时下载文件
- 单击顶部导航时如何进行向下滚动效果(向下滑动).
- 使图像在单击时展开到不大于浏览器
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 如何在单击复选框后调用控制器方法
- 单击页面上的链接后高度发生变化
- 使用jquery在单击时在单元格中输入值
- 将纯文本URL转换为可单击链接
- ASP.NET通过单击JavaScript按钮触发c#事件
- 单击更改图标并通过javascript添加一个css类
- 阻止在select2单击时调用ajax
- 复制图像路径以单击它
- 当值更改时,在servlet中自动获取textarea值,无需单击按钮