【发布时间】:2014-01-03 17:38:49
【问题描述】:
我希望有人可以在这方面提供帮助。我在 html 文档中有一个剑道网格(没有 MVC),我想在行选择上更改整行的类。我尝试了各种方法,仍然没有运气。我目前在:
// 在剑道网格定义中 - 名为“#grid”的网格
change: function (e) {
$("#grid tbody").find("tr[k-state-selected]").css("color", "black");
var id = $("#grid").closest("tr").css("color", "black");
CallDocument(this._data[0]);
},
函数 CallDocument 正在被触发,所以我知道我至少可以访问该函数。
编辑:这是我想出的解决方案,感谢大家
change: function (e) {
$("#grid tbody").find("tr.k-state-selected").attr("class", "detail read k-state-selected");
},
我需要使用“tr.k-state-selected”表单,并使用 attr 进行更改以更改类集。
【问题讨论】:
-
您能否在选择器级别中断链并调试并执行 console.log 或旧警报以查看是否选择了实际行。休息看起来不错,我认为选择器无法到达该行。什么是 k-state-selected?
-
'k-state-selected' in kendo 保证为选中行。所以我应该能够扫描表以查找具有“k-state-selected”的行并更改类。
-
所以 k-state-selected 是该行元素 tr 上的一个类?而不是 tr[k-state-seected] 你应该在你的 find 方法中使用 tr.k-state-selected
-
谢谢,这对我刚刚提出的解决方案有所帮助。
-
您可以使用 jquery 函数,如 addClass 和 removeClass 而不是 attr,这不会影响任何现有的类,只需添加和删除您指定的类。例如
$("#grid tr.k-state-selected").addClass("detail")会将这个类添加到 #grid 内的 tr 中,removeClass 将删除它。