Affichage de l'image basée sur une valeur en asp colonne GridView
J'ai un gridview et l'un des champs de modèle est un asp image balise de serveur. Je veux afficher une image dans ce gridview, mais selon la valeur que je obtenir de l'databind.
De la sorte, chaque ligne peut avoir une des valeurs différentes et sur la base de ces valeurs, j'ai besoin d'afficher des images différentes. J'ai essayé d'appeler une fonction javascript GetImage() et passer la valeur que je obtenir de l'databind à cette fonction. Mais, je ne peux pas obtenir que cela fonctionne.
<Columns>
<asp:TemplateField HeaderText="<%$Resources:LocalizedText,LabelStatus%>">
<ItemTemplate>
<asp:Image ID="imgStatus" runat="server" CssClass="label" src="GetImage(<%#Eval(<%# Bind("Status_value") %>) %>)"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
Fonction Javascript -
function GetImage(value)
{
if (value == 1)
{
return "../Images/act_green.gif";
}
else
{
return "../Images/act_red.gif";
}
}
Ce que je fais mal? Et, comment puis-je résoudre ce problème? Grâce
Pouvez-vous montrer le rendu de la sortie HTML?
OriginalL'auteur pavanred | 2011-02-01
Vous devez vous connecter pour publier un commentaire.
Sauf si vous avez plus besoins que vous n'avez pas mentionné, il n'est pas nécessaire d'utiliser le Javascript et vous pourriez aussi bien le faire tout sur le serveur.
Changer votre asp:balise d'image à la suivante:
Dans votre code-behind, placez les éléments suivants:
Et vous avez terminé.
Excellent travail. Content que tu ai eu de travail.
OriginalL'auteur NakedBrunch
Votre GetImage fonction n'est pas exécutée.
Voir:
IMG SRC balises et JavaScript
Code côté serveur peut retourner le chemin vers l'image sans utiliser de JS.
Vous pouvez le faire sans utiliser de javascript.
OriginalL'auteur msms