Ответ 1
То, что я закончил, было с помощью кнопки html, runat=server
и помещением <i>
внутри этого.
<button runat="server" id="modify" class="btn btn-mini" title="Modify" onserverclick="modify_Onclick">
<i class="icon-edit"></i>
</button>
Я пытаюсь включить <i>
для атрибута Text для кнопки asp, но он просто отображает 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
То, что я закончил, было с помощью кнопки html, runat=server
и помещением <i>
внутри этого.
<button runat="server" id="modify" class="btn btn-mini" title="Modify" onserverclick="modify_Onclick">
<i class="icon-edit"></i>
</button>
Вы можете использовать <asp:LinkButton
. Bootstrap отображает метки привязки (asp: LinkButton), такие как кнопки ввода типа ввода (asp: Button).
<asp:LinkButton runat="server" ID="modify" ToolTip="Modify" CssClass="btn btn-mini" OnClick="modify_Onclick" Text='<i class="icon-edit"></i>' />
Вы сделали бы это так
<button runat="server" id="btnRun" onserverclick="functionName" class="btn btn-mini" title="Search">
<i class="icon-camera-retro"></i> Search
</button>
Взгляните на этот пример (однако, если вы используете sitefinity CMS, это не сработает) Шрифт awesome внутри кнопки asp
Вы можете использовать <label>
for
атрибута. В принципе, любой щелчок на <label>
также запускает событие click элемента html с идентификатором, таким же, как <label>
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>
), будет срабатывать событие клика <asp:button>
.
Если он отображается как <input type="submit">
вы не можете отображать HTML в качестве метки. Он будет отображаться как буквальная строка.
См. Этот пример: http://jsfiddle.net/vkNuX/
Вероятно, вы могли бы сделать что-то, где вы визуализируете ссылку html, в которой есть тег "i" внутри нее (если вы посмотрите на источник предоставленной вами ссылки, что они делают), а затем сделайте его обратной кнопкой при щелчке с помощью 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.
Если вы измените свою кнопку на:
<asp:LinkButton />
он отлично работает в текстовом атрибуте. Я не верю, что в функциональности не будет никаких потерь.
Я пытался отобразить html внутри кнопки на стороне клиента, я не хотел, чтобы он использовал runat="server"
поэтому я использовал javascript:
document.getElementById('button_<%= this.id %>').innerHtml = '<i class="fa fa-edit"></i>';