2010-04-10 5 views
6

Je suis nouveau à JqGrid, alors s'il vous plaît ours avec moi. J'ai quelques problèmes avec le stylisme des cellules lorsque j'utilise un formateur showlink. Dans ma configuration, je mis en place le AfterInsertRow et il fonctionne très bien si j'afficher uniquement du texte simple:AfterInsertRow, setCell. modifier par programme le contenu de la cellule

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` }); 
} 
}, ... 

Ce code fonctionne très bien, mais dès que j'ajoute un formatter

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

ci-dessus le code ne fonctionne pas parce qu'un nouvel élément est ajouté à la cellule

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

est-il possible d'accéder par programme le nouvel élément enfant en utilisant quelque chose comme le code Abov e et changer le style?

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

MISE À JOUR: Afin de vous travailler avez à faire comme suit:

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

CSS Classe

.redLink a { 
    color: red; 
} 

Répondre

6

Vous pouvez ajouter une classe à la cellule:

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

Ensuite, définissez une classe CSS le long de ces lignes :

.redLink a { 
    color: red; 
} 
+0

Bonjour Justin, cela ne fonctionne pas. Maintenant, il affiche 'redlink' comme texte de cellule. – oirfc

+0

Salut à nouveau, cela fonctionne réellement si vous inversez les deux derniers paramètres: jQuery ('# liste'). SetCell (rowid, 'Doc_Number', '', 'redLink'); Merci de m'avoir indiqué la bonne direction. – oirfc

+0

Désolé pour ça, mais je suis content que vous l'ayez fait fonctionner! FWIW, je viens de mettre à jour ma réponse. –

Questions connexes