AfterInsertRow, setCell. программно изменить содержимое ячейки - PullRequest
6 голосов
/ 10 апреля 2010

Я новичок в 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

.redLink a {
    color: red;
}

1 Ответ

6 голосов
/ 10 апреля 2010

Вы можете добавить класс в ячейку:

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

Затем определите класс CSS следующим образом:

.redLink a {
    color: red;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...