在html锚点中插入属性后面的asp.net代码

时间:2012-04-17 19:56:35

标签: c# asp.net html

我在asp.net控件中有一些元素:

<a href="#" title="" style="background-image: url('../i/foo/image.png')">

但我希望从控件c#属性

设置背景图像字段

我的选择是什么?

基本上我想添加类似的内容:

<% if (!string.IsNullOrWhiteSpace(BackgroundImageUrl)) {
    { %>
    <a href="#" title="" style="background-image: <%= item.BackgroundImageUrl%>">
<% } %>

但我不确定<%= item.BackgroundImageUrl%>是否在样式属性中正确转义。什么是正确的逃避模式?

4 个答案:

答案 0 :(得分:4)

要使HTML元素可编程,并且可以在服务器端访问,请添加runat="server"。另外,请确保<form>标记也包含runat="server"。例如:

<a href="#" id="some_id" runat="server" title="" style="background-image: url('../i/foo/image.png')">

在服务器端执行:

some_id.Style.Add("background-color", "red");

有关详细信息,请参阅此website

答案 1 :(得分:1)

猜猜..

<% if (!string.IsNullOrWhiteSpace(BackgroundImageUrl)) {
    { %>
    <a href="#" title="">Text</a>
<% } %>

在你的样式部分..

<style type="text/css"> 
    .selector { background-image:<%= item.BackgroundImageUrl %> }
</style>

答案 2 :(得分:1)

试试这个:

<% if (!string.IsNullOrWhiteSpace(BackgroundImageUrl)) { Response.Write("<a href=\"\" title=\"\" style=\"background-image: url('" + item.BackgroundImageUrl + "')\">"); } %>

答案 3 :(得分:0)

类似的问题答案不同。首先,我的表是这样的:

tr1 = New TableRow
thIn = New TableHeaderCell
thIn.CssClass = "Label"
Dim Anchor As New HtmlAnchor
Anchor.HRef = "PrintForm.aspx?iAuto=" & CStr(rsRCData("ID"))
Anchor.InnerHtml = "<img src='images/PrintButton.png' border='0' />"
Anchor.Target = "_blank"
thIn.Controls.Add(Anchor)
tr1.Cells.Add(thIn)
tbl1.Rows.Add(tr1)

适合我。