AfterInsertRow,setCell。以编程方式更改单元格的内容

时间:2010-04-10 00:40:10

标签: jqgrid

我是JqGrid的新手,所以请耐心等待。当我使用showlink格式化程序时,我在设置单元格样式方面遇到了一些问题。 在我的配置中,我设置了AfterInsertRow,如果我只显示简单文本,它可以正常工作:

 afterInsertRow: function(rowid, aData) {
   if (aData.Security == `C`) {
     jQuery('#list').setCell(rowid, 'Doc_Number', '', { color: `red` });
 } else
 {
   jQuery('#list').setCell(rowid, 'Doc_Number', '', { color: `green` });
 }
}, ...

此代码工作正常,但只要我添加格式化程序

{'Doc_Number, ..., 'formatter: ’showlink’, formatoptions: {baseLinkUrl: ’url.aspx’}

上述代码不起作用,因为新元素已添加到单元格

<a href='url.aspx'>cellValue</a>

是否可以使用类似上面的代码以编程方式访问新的子元素并更改样式?

`<a href='url.aspx' style='color: red;'>cellValue</a>` etc.

更新:为了工作,你必须做如下:

jQuery('#list').setCell(rowid, 'Doc_Number', '', 'redLink');

CSS Class

.redLink a {
    color: red;
}

1 个答案:

答案 0 :(得分:6)

您可以在单元格中添加一个类:

jQuery('#list').setCell(rowid, 'Doc_Number', '', 'redLink');

然后沿着以下几行定义一个CSS类:

.redLink a {
    color: red;
}