Comment changer mon utilisation côté serveur ASP: ImageButton HTML img tag uniquement
-
27-09-2019 - |
Question
Je suis en train de câbler un peu de fantaisie Javascript (PopBox) à un contrôle ImageButton et je reçois un exécution très étrange (compilation) erreur.
<asp:imagebutton id="imgBtnPicture" runat="server"
class="PopBoxImageSmall"
pbshowcaption="true"
title="Click to magnify/shrink"
onclick="Pop(this,50,'PopBoxImageLarge');"
width="90%">
</asp:imagebutton>
Je l'ai regardé à remplacer le contrôle Web ImageButton avec une balise HTML img plus simple (qui est ce que la documentation PopBox suggère).
Et pourtant, je ne sais pas comment remplir une balise <img>
du fichier CodeBehind. Voici une déclaration typique qui définit la propriété .SRC à partir d'une ligne de jeu de données ASP.Net:
Me.imgBtnPicture.Src = theRow.Item("ImageURL")
J'ai essayé cela comme une alternative:
<img alt="" src=""
id="imgPicture" runat="server"class="PopBoxImageSmall" title="Click to magnify/shrink"
onclick="Pop(this,50,'PopBoxImageLarge');" width="90%"
/>
Visual Studio 2008 ne se plaint pas de cette déclaration ci-dessus mais dans le fichier codebehind, comment pourrais-je répondre à ce que je puisse remplir l'attribut .src.
IntelliSense, ne peut même pas « voir » ce
Me.imgPicture.src = theUrl 'this won't compile...
J'ajouté au sommet du codebehind mais semblait avoir aucun effet:
Imports System.Web.UI.HtmlControls
La solution
la <asp:imagebutton onclick="..." >
est pour une méthode serveur (code derrière).
essayez avec OnClientClick
Autres conseils
dans asp.net ImageButton il n'y a pas de changement de classe de la propriété à CssClass = "PopBoxImageSmall"
il fonctionne.
de la casse, assurez-vous que vous définissez toujours la propriété Src
, S
du capital ... et il suffit de retirer la src=""
de l'étiquette elle-même donc il n'y a pas de confusion par une personne lisant plus tard:
Me.imgPicture.Src = theUrl