2014-11-28 3 views
3

Если я добавлю некоторые пользовательские теги в моем проекте загрузки Spring, возможно ли использовать их в файле на основе тимелеафа? Например, если у меня был этот тег определен в моем файле TLD (место в каталоге/SRC/основные/ресурсы/статические):Использование пользовательских тегов с thymeleaf

<tag> 
    <name>Input</name> 
    <tag-class>org.store.custom.taglib.form_control.InputTag</tag-class> 
    </tag> 

ли я мог бы использовать это, на мой взгляд, как, что:

<p th:case="'Input'"><f:Input/></p> 

Кто-нибудь знает, возможно ли это?

UPDATE

Я стараюсь, но когда я запускаю приложение, пользовательские теги не обрабатываются в соответствующие теги:

фундаментальный принцип
<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:f="/form.tld" xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3"> 
<head> 
    <title>cadastro</title> 
</head> 
<body> 
    <div class="panel panel-default"> 
    <div class="panel-heading"> 
     <h3 class="panel-title">cadastro</h3> 
    </div> 
    <div class="panel-body"> 
     <f:form th:attr="[email protected]{/__${command.getClass().getSimpleName()}__/cadastra}"> 
     <div th:each="item : ${command['class'].declaredFields}"> 
      <div th:each="item2 : ${item.declaredAnnotations}"> 
      <div th:switch="${item2.annotationType().simpleName}" th:with="index=${itemStat.index}"> 
       <p th:case="'Checkbox'"><f:Checkbox/></p> 
       <p th:case="'DataList'"><f:DataList/></p> 
       <p th:case="'Input'"><f:Input/></p> 
       <p th:case="'Radiobutton'"><f:Radiobutton/></p> 
       <p th:case="'Select'"><f:Select/></p> 
       <p th:case="'Textarea'"><f:Textarea/></p> 
      </div> 
      </div> 
     </div> 
     </f:form> 
    </div> 
    </div> 
</body> 
</html> 

ответ

2

№ п.п. Thymeleaf никогда является то, что нет чужеродных теги должен существовать. (Только стандартный html). Все динамическое содержимое добавляется через пользовательские атрибуты.

Смежные вопросы