我正在使用asp:超链接根据URL中的参数动态呈现链接的图像.我需要能够将CSS类添加到渲染的img中,并且无法弄清楚如何做到这一点.
我知道我可以添加“CssClass =”blah“”到asp:超链接,但在渲染的HTML中,只有a接收到css类.喜欢这个:
<a href="assets/images/blah.jpg" class="blah" id="ctl00_LeftContent_alternateImage4"> <img style="border-width: 0px;" src="assets/images/blahThumbnail.jpg"/> </a>
我发现another question允许我添加内联样式到一个控件,但我想添加一个类到img的asp:超链接生成.
可以做类似于这个答案的事情:
myControl.Attributes.Add("style","color:red");
喜欢,也许?
myControl.img.Attributes.Add("class","blah");
解决方法
看起来您正在使用HyperLink的ImageUrl属性.我建议明确地创建内部图像控件:
<asp:HyperLink runat="server" CssClass="linkclass" NavigateUrl="http://example.com"> <asp:Image runat="server" CssClass="imgClass" ImageUrl="yourimage.jpg" /> </asp:HyperLink>