FontAwesome с Grails <g: actionSubmit
Я пытался добавить значки к своим кнопкам сохранения, удаления и т. Д. У меня есть около пяти кнопок, используя<g:actionSubmit>
тег для вызова действия в контроллере для выполнения соответствующих функций. Моя проблема в том, что глифы FontAwesome и bootstrap требуют<i class="icon-***">
тег, который будет использоваться следующим образом:
<a href="http://google.com">
<i class="icon-ok"></i> Google
</a>
В Grails этот формат тега между начальным тегом невозможен (по крайней мере, сactionSubmit
). Атрибут value - это строка, которая отображается. Есть ли работа вокруг этого? Имейте в виду, мне все еще нужно сопоставить действие кнопок обратно с контроллером, поэтому у меня возникла проблема с использованием прямой<button>
тег как то, что рекомендуется для начальной загрузки.
ОБНОВИТЬ:
У меня много проблем с использованием текущих 2 ответов. Они оба работают для добавления значков, но у меня возникают некоторые неудобства, которые мне нужно взломать, чтобы исправить многие вещи. Я думал о другом решении, но у меня возникли проблемы с его реализацией. Я хотел бы написать свой собственный тег lib с использованием базы taglib в качестве тега lib ниже actionSubmit:
def actionSubmit = {attrs ->
attrs.tagName = "actionSubmit"
if (!attrs.value) {
throwTagError("Tag [$attrs.tagName] is missing required attribute [value]")
}
// add action and value
def value = attrs.remove('value')
def action = attrs.action ? attrs.remove('action') : value
out << "<input type=\"submit\" name=\"_action_${action}\" value=\"${value}\" "
// process remaining attributes
outputAttributes(attrs)
// close tag
out << '/>'
}
Единственное изменение, которое мне нужно сделать, это дать ему возможность взять
<i class="icon-ok"></i>
пометьте между:
<g:actionSubmit ...> </g:actionSubmit>
У кого-нибудь есть предложения или по этой реализации?