1

在我的中继器中,我必须根据某些条件加载 4 个不同图像中的 2 个。

这里有 4 张图片

if (<%# DataBinder.Eval(Container.DataItem, "Voted") %> == "true") 'load these 2 images
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/badge-circle-plus-24-ns.png" />
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-down-24-ns.png" />
else 'load these 2 
    <img style="cursor: pointer" onclick="Dostuff" 
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-up-24-ns.png"  />
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-down-24-ns.png"  />

我该如何解决这个问题?

4

1 回答 1

2

你可以; 有关更多信息,请参阅此内容。本质上,您应该将其格式化为:

<% if (DataBinder.Eval(Container.DataItem, "Voted")  == "true") {  %>
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/badge-circle-plus-24-ns.png" />
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-down-24-ns.png" />
<% } else { %>
    <img style="cursor: pointer" onclick="Dostuff" 
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-up-24-ns.png"  />
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-down-24-ns.png"  />
<% } %>

我不确定这是否完全受支持,因此您也可以考虑尝试:

<img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src='../../Images/<%# DataBinder.Eval(Container.DataItem, "Voted")  == "true" ? "badge-circle-plus-24-ns.png" : "arrow-up-24-ns.png" %>' />
  .
  .

后者使用条件并根据条件渲染适当的图像。

于 2012-12-31T16:27:43.557 回答