【问题标题】:how to change html image src by c#如何通过c#更改html图像src
【发布时间】: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 - 我重新标记以反映这一点

标签: c# html webforms


【解决方案1】:

试试这个,它对我有用

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

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";
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-08-21
        • 2021-03-28
        • 2013-05-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多