我正在开发一个cms网站。在这个管理员可以添加徽标到网站的主页,并可以告诉图像的位置是否应该显示在主页的左侧,右侧或中间。
在主页中,图像显示在div内。我知道如何显示数据库中的图像,但不知道如何动态设置其位置?
但是我尝试了代码但没有正常工作?
<asp:Repeater ID="rptHeaderMenu" runat="server">
<ItemTemplate>
<div align='<%Eval("IMAGE_POSITION")%>'>
<img src='<%Eval("IMAGE_URL")%>' />
</div>
</ItemTemplate>
</asp:Repeater>
答案 0 :(得分:2)
试试这个:
HTML:
<div id="div1" runat="server">
<img id="img1" runat="server" />
</div>
代码背后的代码:
string floatPosition = <put database value here>
img1.Style.Add("float", floatPosition);
未测试示例代码。您可能需要进行必要的调整。
根据您提供的示例更新了示例代码:
使用面板包装图像(在Repeater的ItemTemplate内),以便从服务器端轻松访问。它将在客户端呈现为div。
<asp:Repeater ID="rptHeaderMenu" runat="server" OnItemDataBound="rptHeaderMenu_OnItemDataBound">
<ItemTemplate>
<asp:Panel ID="Panel1" runat="server" />
<img src='<%Eval("IMAGE_URL")%>' />
</asp:Panel>
</ItemTemplate>
</asp:Repeater>
在转发器的OnItemDataBound事件中(代码隐藏):
protected void rptHeaderMenu_OnItemDataBound(Object Sender, RepeaterItemEventArgs e)
{
string floatPosition = <put database value here>
Panel Panel1 = e.Item.FindControl("Panel1") as Panel
Panel1.Style.Add("float", floatPosition);
}
答案 1 :(得分:0)
采用服务器端image
控件。将对齐数据存储在string
变量中。将对齐变量放在switch case
语句中,并根据具体情况向图像添加所需的样式。
选中此链接以了解如何动态添加样式。 http://msdn.microsoft.com/en-us/library/17ysx206(v=vs.85).aspx
同时查看此链接