2017-06-27 25 views
0

この"myTemplate:: #foo"は私に#foo要素を取得します。複数の要素をidからテンプレートから取得する

<div id="foo"></div> 
<div id="boo"></div> 
<div id="moo"></div> 

しかし、私は"myTemplate:: #foo, #moo"を取得したいが、セレクタは機能しません。

idによってThymeleafのテンプレートから複数の要素を取得することは可能ですか?

構文は次のとおりです。

答えて

1

このセレクタは、あなたが(thymeleaf 3に検証)欲しいものを行います。

"myTemplate :: [id='foo' or id='moo']" 

More examples of thymeleaf selectors.

+0

ありがとう、私はそれをダブルチェックして説明したとおりに、それを使用しましたが、残念ながらそれは、要素を選択しません。理由を見つけることができません:(おそらく、私はクラスメソッドでテンプレートを手動で解決しているので、とにかく+1 – kidwon

+0

@kidwon - どういう意味ですか?独自の 'ClassLoaderTemplateResolver'と' TemplateEngine'を作成して呼び出します'engine.process()'、新しいHashSet (Arrays.asList( "[id = 'foo'またはid = 'moo'])は、 ")、))、ctx);あなたはthymeleaf 3を使っていますか? – Metroids

+0

私は' view resolvedView = viewResolver.resolveViewName( "myTemplate :: [id = 'foo'またはid = 'moo'] '、ロケール)'を使用しています; – kidwon

0

はい、Thymeleafは、複数のテンプレートを使用します。ポイントはth:フラグメントシンボルとth:シンボルを置き換えます。あなたがより多くの情報を望むなら。あなたは2つのキーワードを検索します。

私のサンプルコード。

コンテンツ

<!-- start wrapper --> 
<div class="wrapper"> 
    <!-- start top header --> 
    <div id="header" th:replace="layout/header :: officeHeader"></div> 
    <!-- end top header --> 
    <!-- start body content --> 
    <div class="content-wrapper"> 
     <!-- start left side column --> 
     <div id="sidebar" th:replace="layout/left :: officeSidebar"></div> 
     <!-- end left side column --> 
     <div id="body" th:replace="user/__${content}__:: ${content}"></div> 
    </div> 
    <!-- end body content --> 
</div> 
<!-- end wrapper --> 
<!-- start footer --> 
<div id="footer" th:replace="layout/footer :: officeFooter"></div> 

フッター

<!-- start footer --> 
<footer class="main-footer" th:fragment="officeFooter"> 

</footer> 
<!-- end footer --> 
関連する問題