如何通过c#更改html图像src

Posted

技术标签:

【中文标题】如何通过c#更改html图像src【英文标题】:how to change html image src by c# 【发布时间】:2011-04-22 05:03:13 【问题描述】:
<img src ="~/UserControls/Vote/Images/Arrow Up.png" id = "vote-up-off" 
        runat = "server" alt ="vote up" 
class="voteupImage" style="height: 45px; width: 44px"/>

这里我想为某些条件更改图像的 src,例如

if ( a==4)

src  url  shuld be ......

else
 
src  url should be...

【问题讨论】:

我假设您正在使用 Webforms - 我重新标记以反映这一点 【参考方案1】:

试试这个,它对我有用

<img src="_images/<%= AssignImageURL() %>"  />

C#方法

protected string AssignImageURL()

    String ID = Convert.ToString(Session["id"]);
    ds = sq.SelectQuery("Select LogoURl from table where ID='"+ ID+"' ");
    if (Convert.ToString(ds.Tables[0].Rows[0][0]).Trim() != "")
        return Convert.ToString(ds.Tables[0].Rows[0][0]).Trim();
    else
        return "Logo.jpg";

【讨论】:

【参考方案2】:
if (someCondition)

    vote-up-off.Attributes["src"] = ResolveUrl("~/UserControls/pic.png");

【讨论】:

正确,但基本上没有添加其他三个答案中未涵盖的内容。 不要只发布一段代码,请解释为什么这段代码可以解决所提出的问题。没有解释,这不是答案。 信不信由你,这实际上对我不起作用。【参考方案3】:

HTML

<img src="~/UserControls/Vote/Images/Arrow Up.png" 
         id="VoteUpOff" 
         runat="server" alt ="vote up" 
         class="voteupImage" 
         style="height: 45px; width: 44px"
    />

服务器端

if (someCondition)

    VoteUpOff.Attributes["src"] = ResolveUrl("~/UserControls/foo.png");

记住要查看更改,您必须将“img”放在 UpdatePanel 进行更改后如果 UpdateMode=Conditional 则更新 UpdatePanel,否则如果 Property ChildAsTriggers=True,它将自动更新

【讨论】:

因为它是&lt;img /&gt;runat="server",所以VoteUpOff 将属于htmlImage 类,因此您可以访问属性HtmlImage.Src,而不是使用Attributes 数组。 【参考方案4】:

首先你需要提供一个id 可以用作变量的名称:

<img src="~/UserControls/Vote/Images/Arrow Up.png" 
     id="VoteUpOff" 
     runat="server" alt ="vote up" 
     class="voteupImage" 
     style="height: 45px; width: 44px"
/>

在你后面的代码中你可以使用这个变量:

if (someCondition)

    VoteUpOff.Attributes["src"] = ResolveUrl("~/UserControls/foo.png");

【讨论】:

【参考方案5】:

您可能希望将 id 更改为不带连字符的内容,但它会是

voteUpOff.Attributes["src"] = "myImage.png";

【讨论】:

以上是关于如何通过c#更改html图像src的主要内容,如果未能解决你的问题,请参考以下文章

如何通过在 C# windows 窗体中的文本框中输入来更改图像的大小?

当父有“选中”类时,如何更改图像src?

以循环方式使用jquery更改多个图像src

通过过渡更改图像不透明度

通过 jQuery 检测图像加载

如何在play框架项目中从javascript更新img的src?