【问题标题】:Imagebutton Picture is not showingImagebutton 图片未显示
【发布时间】: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


【解决方案1】:

您是否尝试过仅将控件附加到后面代码中的 div 容器?

ImageButton imgBt = new ImageButton();
imgBt.ID = "PDF_UG";
imgBt.ImageUrl = "~/images/PDF_red64.png";
pdfug.Controls.Add(imgBt);

【讨论】:

  • 感谢这对我有用,但将 imgBt.Id 替换为 imgBt.ID
  • 优秀。是的,我只是把它写在我的头顶上,所以忘记了正确的外壳。我已经为未来的观众编辑了答案。
猜你喜欢
  • 1970-01-01
  • 2014-09-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-13
  • 1970-01-01
相关资源
最近更新 更多