73109


Spring Tool Suite 4でHTMLの編集を行っており、  
scriptタグ内にthymeleafやjavascriptの記載を行うとエラー注釈が出てしまいます。  
こちらを消す方法をご教授頂ければ幸いです。  
[![エラー注釈が出てしまっている画像](https://i.stack.imgur.com/bf0hv.png)](https://i.stack.imgur.com/bf0hv.png)


CC BY-SA 4.0
2021-01-05T22:43:10.170
73107
2021-01-06T00:27:58.893
7626
question
html eclipse spring-boot
Spring Tool Suite 4でscriptタグ内のエラー注釈を消したい


1点目:  
JavaScriptのコメントは `<!-- コメント -->` ではなく `/* コメント */`です。  
なお、Thymeleafでは、実行時にコメントを除去したい場合にはは`/*[- コメント -]*/`形式が利用できます。

  * [13.4 テキスト形式のパーサーレベルコメントブロック：コードの削除](https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf_ja.html#%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E5%BD%A2%E5%BC%8F%E3%81%AE%E3%83%91%E3%83%BC%E3%82%B5%E3%83%BC%E3%83%AC%E3%83%99%E3%83%AB%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E5%89%8A%E9%99%A4)

2点目:  
`[[${createBean}]]`がJavaScript的に妥当ではないためエラーになっています。  
これは、ナチュラルテンプレートという仕組みで対応できます。

  * [12.3 JavaScriptインライン処理 > JavaScriptナチュラルテンプレート](https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf_ja.html#javascript%E3%83%8A%E3%83%81%E3%83%A5%E3%83%A9%E3%83%AB%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88)

まとめると、例えば次のような形で記述すればエラーは解消できます。

[code]

      <script th:inline="javascript">
        /* 全画面項目読み取り専用フラグ */
        var createBean = /*[[${createBean}]]*/ true;
      </script>
    
[/code]

* * *

質問内容からは逸れますが、`</body>`の後に`<script>`を置くのもhtml的に妥当ではありません。

  * [Is it wrong to place the <script> tag after the tag?  
](https://stackoverflow.com/q/3037725/4506703)

  * [Where should I put <script> tags in HTML markup?  
](https://stackoverflow.com/q/436411/4506703)


CC BY-SA 4.0
2021-01-06T00:21:57.770
73109
2021-01-06T00:27:58.893
2021-01-06T00:27:58.893
2808
2808
73107
answer