0

我有一些由 Sigma 动态创建的代码,如下所示:

<div id="myGrid1_headDiv" class="gt-head-div">
<div class="gt-head-wrap">
<table id="myGrid1_headTable" class="gt-head-table">
<tbody>
<tr class="gt-hd-row">
<td class="gt-col-mygrid1-uid">
<div class="gt-inner gt-inner-left" unselectable="on" title="#">
<span>#</span>
<div class="gt-hd-tool"><span class="gt-hd-icon"></span>
<span class="gt-hd-button"></span>
<span class="gt-hd-split" style="cursor: col-resize; "></span></div></div></td>
<td class="gt-col-mygrid1-p_deldate">
<div class="gt-inner gt-inner-left" unselectable="on" title="Planned Delivery Date">
<span>Planned Delivery Date</span>
<div class="gt-hd-tool"><span class="gt-hd-icon"></span>
<span class="gt-hd-button"></span>
<span class="gt-hd-split" style="cursor: col-resize; "></span></div></div></td>

我正在尝试针对未分类的跨度(# 和计划的交付日期),以便为它们设置样式:

  $("div.gt-inner:first-child span")
    {
          $(this).addClass("celltitle");
        };

但它没有效果。如您所见,它周围还有其他我不想触及的跨度。我究竟做错了什么?

===== 使用 Sigma Grid 的其他人的最终答案:

感谢@minitech 的指点,答案是添加到 Sigma Grid 的 gridOption 中:

onComplete:function(grid){ 
 $('div.gt-inner > span').addClass('celltitle'); //add cell title after grid load
}
4

3 回答 3

1

您已在其中插入了任意代码块。你需要使用jQuery的.each函数并传递你的函数;jQuery 是一个库,而不是一种语言结构。

$("div.gt-inner:first-child span").each(function() {
    $(this).addClass("celltitle");
});

或者,更简洁地说,因为addClass(像许多 jQuery 函数一样)隐式地对整个集合进行操作:

$('div.gt-inner:first-child span').addClass('celltitle');
于 2012-04-09T23:28:42.813 回答
0

像这样使用它

$("div.gt-inner:first-child span").addClass("celltitle");

演示

于 2012-04-09T23:28:43.567 回答
0

我认为这应该有效:

$("div.gt-inner span").addClass("celltitle")

查看http://api.jquery.com/addClass/了解更多信息。

于 2012-04-09T23:30:45.847 回答