0

我需要在来自 JSON 的生成内容块中添加一个类。我相信它在toggleClass 上咆哮,因为HTML 实际上还没有生成。我想我可能需要以某种方式使用 .on() 或 .live() 。

我没有收到错误,只是没有添加课程。同样,因为我相信表格内容是动态构建的。

这是相关的代码。

// The data variable is a block of JSON
for(i=1; i < data.length; i++){
 foo += '<tr id="'+data[i][2]+'">test</tr>';

 // Here's where I am trying to add the class, but it is not working. We check to see if a value in our JSON is true, if so - we change the class.
if(data[i][1]){
 $("#"+data[i][2]).toggleClass("newClass"); // finds the ID by unique name
}

}
4

1 回答 1

0

toggleClass 仅适用于 DOM 对象,在您调用它时,该元素不作为 DOM 对象存在,仅作为字符串的一部分。

您可以等待切换类,直到将元素添加到 DOM 之后,将类添加到字符串中,或​​者(我的偏好)在将它们注入 DOM 之前将它们转换为元素。就像是:

$(foo).toggleClass("newClass").appendTo("#whatever")'
于 2012-07-17T16:37:42.630 回答