如何在asp Button的Text属性中使用html

时间:2012-07-13 21:00:09

标签: asp.net

我正在尝试为asp按钮的Text属性添加<i>,但它只是将html呈现为文本...

<asp:Button runat="server" ID="modify" ToolTip="Modify" CssClass="btn btn-mini" OnClick="modify_Onclick" Text='<i class="icon-edit"></i>' />

我必须过度思考......

修改 我正在使用twitter bootstrap框架。这就是<i>标签的原因。这是一个例子:http://twitter.github.com/bootstrap/base-css.html#icons

8 个答案:

答案 0 :(得分:25)

您可以使用<asp:LinkButton。 Bootstrap呈现锚标签(asp:LinkBut​​ton),如输入类型提交按钮(asp:Button)。

<asp:LinkButton runat="server" ID="modify" ToolTip="Modify" CssClass="btn btn-mini" OnClick="modify_Onclick" Text='<i class="icon-edit"></i>' />

答案 1 :(得分:14)

我最终做的是使用html按钮,runat=server并将<i>放在其中。

<button runat="server" id="modify" class="btn btn-mini" title="Modify" onserverclick="modify_Onclick">
    <i class="icon-edit"></i>
</button>

答案 2 :(得分:7)

你会这样做

    <button runat="server" id="btnRun" onserverclick="functionName" class="btn btn-mini" title="Search">
    <i class="icon-camera-retro"></i> Search
    </button>

看一下这个例子(但是如果你使用的是sitefinity CMS,这将不起作用) Font awesome inside asp button

答案 3 :(得分:6)

您可以利用<label>代码的for属性。 基本上,<label>上的任何点击也会触发html元素的点击事件,其ID与<label>的{​​{1}}属性相同

例如:

for

点击此处的<label for="modify"><i class="icon-edit"></i></label> <asp:Button style="display:none;" runat="server" ID="modify" ToolTip="Modify" CssClass="btn btn-mini" OnClick="modify_Onclick" Text='' /> 元素(也会点击<label>元素),将触发<i>的点击事件。

答案 4 :(得分:0)

如果它呈现为<input type="submit">,则无法将HTML显示为标签。它将呈现为文字字符串。

请参阅此示例:http://jsfiddle.net/vkNuX/

答案 5 :(得分:0)

你可以做一些事情来渲染一个内部带有“i”标签的html链接(如果你查看你提供的链接的来源,那就是他们做的事情),然后点击使用它回发ClientScriptManager.GetPostBackEventReference()获取对回发脚本的引用。 http://msdn.microsoft.com/en-us/library/system.web.ui.clientscriptmanager.getpostbackeventreference.aspx

例如:

<a class="btn btn-mini" href="javascript:<% ClientScriptManager.GetPostBackEventReference()%>"><i class="icon-refresh"></i> Refresh</a>

这只是我的想法,所以你可能需要稍微调整一下。然后,您可以将其转换为您自己的自定义asp.net控件。

答案 6 :(得分:0)

如果您将按钮更改为:

Dim dgv As DataGridView = Me.TblCalendarDataGridView

For i As Integer = 0 To dgv.Rows.Count - 1
    For ColNo As Integer = 4 To 7
        If Not dgv.Rows(i).Cells(ColNo).Value Is DBNull.Value Then

            dgv.Rows(i).Cells(ColNo).Style.BackColor =  vbcolor.blue
        End If
    Next
Next

它在text属性中完美运行。我不相信功能会有任何损失。

答案 7 :(得分:0)

我试图在客户端的按钮内呈现html,我不希望它使用runat="server",所以我所做的是使用javascript:

document.getElementById('button_<%= this.id %>').innerHtml = '<i class="fa fa-edit"></i>';