28

我正在尝试<i>为 asp 按钮包含一个 for Text 属性,但它只是将 html 呈现为文本......

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

我得想太多了……

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

4

8 回答 8

30

您可以使用<asp:LinkButton. Bootstrap 像输入类型提交按钮 (asp:Button) 一样呈现锚标记 (asp:LinkBut​​ton)。

<asp:LinkButton runat="server" ID="modify" ToolTip="Modify" CssClass="btn btn-mini" OnClick="modify_Onclick" Text='<i class="icon-edit"></i>' />
于 2013-01-11T19:12:47.627 回答
22

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

<button runat="server" id="modify" class="btn btn-mini" title="Modify" onserverclick="modify_Onclick">
    <i class="icon-edit"></i>
</button>
于 2012-07-14T17:00:54.910 回答
7

你会这样做

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

看看这个例子(但是,如果你使用的是 sitefinity CMS,这将不起作用) asp 按钮内的字体真棒

于 2013-06-27T07:54:44.967 回答
6

您可以利用<label>标签的for属性。基本上任何点击<label>也会触发一个 id 与<label>'for属性相同的 html 元素的点击事件

例如:

<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>元素),将触发<asp:button>'click 事件。

于 2013-11-12T09:44:24.510 回答
2

如果您将按钮更改为:

<asp:LinkButton /> 

它在 text 属性中工作得很好。我不相信在功能上会有任何损失。

于 2016-06-30T11:05:22.643 回答
0

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

看这个例子:http: //jsfiddle.net/vkNuX/

于 2012-07-13T21:22:44.437 回答
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 控件中。

于 2012-07-13T21:30:56.003 回答
0

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

document.getElementById('button_<%= this.id %>').innerHtml = '<i class="fa fa-edit"></i>';
于 2019-02-06T14:40:39.543 回答