HTML img et ASP.NET Image et chemins relatifs
Est-ce le bon moyen pour faire référence à une image dans ASP.NET pour vivre de déploiement sur IIS?
Les ouvrages suivants, en dev et de la production:
<asp:ImageButton ID="ibnEdit" runat="server" OnClick="ibnEdit_Click" ImageUrl="~/App_Themes/Default/images/one.png" Visible="false" ToolTip="Edit" />
Le suivant ne fonctionne pas soit: (pourquoi pas?)
<img src="~/App_Themes/Default/images/two.gif" />
Les ouvrages suivants, en dev, mais pas de la production:
<img src="../App_Themes/Default/images/two.gif" />
source d'informationauteur mmmbop
Vous devez vous connecter pour publier un commentaire.
Si vous souhaitez utiliser régulièrement
img
étiquette avec le~
chemin, vous pouvez simplement ajouterrunat="server"
dans la balise comme un attribut (comme un serveur de contrôle) et le chemin d'accès sera résolu. e.g:Pour votre seconde partie, est l' ../référence de l'image apparaissant sur plus d'une page, par exemple un contrôle de l'utilisateur ou une page maître (etc), de sorte que vous pouvez l'utiliser à différents niveaux de dossiers...
L' ~ ne fonctionne que sur un serveur de contrôle tels que ou . Cela dit ASP.Net pour insérer le chemin de l'application. Parfois, c'est juste "/" mais si votre application n'est pas le répertoire racine du site web, il va inclure le chemin d'accès. La balise img est que de l'html et il ne sera pas altérée par ASP.Net, de sorte que le navigateur obtient le chemin "~/App_Themes/Default/images/two.gif" et ne sait pas comment les lire.
Je ne sais pas pourquoi le dernier exemple fonctionne dans le dev, mais pas dans la production. Il pourrait a quelque chose à voir avec le fait d'avoir l'application dans le répertoire racine de dev, mais dans un sous-répertoire dans le répertoire de la production.
- Je utiliser cette syntaxe pour accéder aux images de pages maîtres
Cela a fonctionné pour moi
$(".sélecteur").attr('src', "Content/themes/base/images/img.png");
L'important, c'est que vous n'avez pas de "/" au début de votre nouvelle src.