【发布时间】:2015-09-03 19:05:42
【问题描述】:
我正在尝试在 div 容器中替换 Imagebutton,但未显示新图片。
这是改图片前来自aspx网站的代码:
<div id="pdfug" runat="server">
<asp:ImageButton ID="PDF_UG" runat="server" ImageUrl="~/images/PDF_gray64.png" style="text-align: center"/>
</div>
一切都很好,图片显示出来了。
现在我用以下代码更改div 容器的内容:
pdfug.InnerHtml = @"<asp:ImageButton ID=""PDF_UG"" runat=""server"" ImageUrl=""~/images/PDF_red64.png""/>";
当我运行该站点时,新图片未显示。在网站的源码中可以看到代码被替换成功:
<div id="ctl00_MainContent_pdfug"><asp:ImageButton ID="PDF_UG" runat="server" ImageUrl="~/images/PDF_red64.png"/></div>
图片路径正确,可以用
打开http://localhost:65277/images/PDF_red64.png
那么问题出在哪里?
【问题讨论】:
-
尝试使用 ctrl+f5 删除缓存
-
@NitinVarpe 已经尝试过不同的浏览器并且已经删除了缓存。也上传到 IIS 上还是一样的问题
-
您是否检查过检查元素并打开该图像链接?
-
@NitinVarpe 嗯,它给了我
imageurl="~/images/PDF_red64.png"回来。我更改了innerhtml的代码并删除了~/,现在当我检查它时显示imageurl="images/PDF_red64.png,这应该是正确的链接,因为旁边显示的其他图片也有images/...。但是我的红色图片仍然没有显示... -
@katz,我们不能直接将服务器端标签添加到客户端控件属性中。您可以在 div 的 innerHTML 中添加 img 标签 ot input type="image" 标签。
标签: c# html asp.net innerhtml imagebutton