gpt4 book ai didi

javascript - 通过按 TD 对象类过滤设置只读列

转载 作者:行者123 更新时间:2023-11-30 05:36:05 24 4
gpt4 key购买 nike

我使用的是 Datatables Plugin for JQuery 的最新版本 1.10.0|并且需要有一些列可编辑,有些列不可编辑。由于数据表不提供开箱即用的此功能,并且遵循 here 的说明我在我的 columns 初始化/规范中添加了一个类 readonly 我用来检查例如

"drawCallback": function(settings) {
var dt = this;
$('tbody td[class != "readonly"]').editable("/@context/edit/do",

这行得通,但它不足以满足我的需求,因为我需要在 readonly 作为类的子字符串出现时进行过滤,即还有其他类,例如只读排序_1。我尝试执行以下操作但失败了:

"drawCallback": function(settings) {
var dt = this;
$('tbody td[class.indexOf("readonly") == -1]').editable("/@context/edit/do",

有错误:

Error: Syntax error, unrecognized expression: tbody td[class.indexOf("readonly") == -1]

如何做到这一点?

最佳答案

您不能在选择器中使用 JavaScript 表达式。你想要的可能是 jQuery 的 .filter()方法,它允许您向它传递一个返回 true 的函数如果应保留匹配元素集中的项目。

使用它,您的代码可以像这样重写:

$('tbody td').filter(function(){
return !$(this).hasClass('readonly')
}).editable("/@context/edit/do",

在过滤函数中,我检查了 <td> 是否有课readonly ,并通过反转此检查(使用 ! ),该函数将返回 false只要它有那个类,就会导致删除“只读”<td>传递给 editable 的列表中的元素方法。

关于javascript - 通过按 TD 对象类过滤设置只读列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23739458/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com