web-dev-qa-db-fra.com

colonne de lien html dans jqGrid

Est-il possible d'avoir un lien html dans une colonne avec jqGrid, je ne trouve aucun exemple dans la documentation?

29
Danny

Oui, utilisez un formateur, soit un formateur personnalisé, soit Formateur prédéfini .

21
Craig Stuntz

Voici l'exemple de configuration colModel du lien de Craig vers l'aide au formatage jqGrid. Il spécifie le formateur comme showLink et l'url et les paramètres sont spécifiés avec formatoptions.

colModel: [ {name:'myname', 
             edittype:'select', 
             formatter:'showlink', 
             formatoptions:{baseLinkUrl:'someurl.php', addParam: '&action=edit'}
28
Randy Klingelheber

Désolé de poster une vieille question, mais voici une autre option qui a fonctionné pour moi: créez simplement un formateur personnalisé et renvoyez une balise d'ancrage (une bonne option si vous avez besoin d'un contrôle vraiment granulaire du lien):

function returnMyLink(cellValue, options, rowdata, action) 
{
    return "<a href='/Controller/Action/" + options.rowId + "' >Click here</a>";
}   

Recherchez dans les lignes de données les données renvoyées par votre requête. J'espère que cela aide quelqu'un!

22
Patrick

dans les données json que j'utilise pour la grille, je renvoie simplement du code html avec une balise href, qui fonctionne pour moi

4
beakersoft

Si vous utilisez des données xml, vous pouvez ajouter une colonne factice dans votre requête pour l'afficher dans la grille

la grille:

colModel :[{name:'EDIT',edittype:'select',formatter:'showlink', width:5,xmlmap:"Edit",formatoptions:{baseLinkUrl:'someurl.php', addParam: '&action=edit'}},

requete:

select f1,f2,f3, 'Edit' as Edit FROM table
3
yei

en xml j'utilise l'entité lt; au lieu de <dans la balise a comme ce lt; a href = "dest"> mon linklt;/a> et fonctionne très bien avec jqgrid 3.6

1
user214553