質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Thymeleaf

Thymeleaf(タイムリーフ)とは、Java用のテンプレートエンジンで、特定のフレームワークに依存せず使用することが可能です。

Q&A

1回答

4367閲覧

JavaScriptのインライン処理 Thymeleaf

oruka1982

総合スコア10

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Thymeleaf

Thymeleaf(タイムリーフ)とは、Java用のテンプレートエンジンで、特定のフレームワークに依存せず使用することが可能です。

0グッド

0クリップ

投稿2017/12/24 08:37

参考書:Spring boot プログラミング入門
対象ページ:p173~p175

◆環境
Spring Tool Suite
Version: 3.9.1.RELEASE
Build Id: 201710111105
Platform: Eclipse Oxygen.1a (4.7.1a)
thymeleaf.version 3.0.2.RELEASE

◆問題
上記、参考書のページを参考に実装しましたが、js周りで警告が入り、思うような動作がしません。

◆エラー文
SampleJs.jsファイルから
- Expected an operator and instead saw '/'
- Expected ')' to match '(' from line 6 and instead saw
'100'
- Expected an identifier and instead saw ')'

◆SampleJs.jsファイル
function action() {
var val = document.getElementById("text1").value;
var res = parseInt(val * ((100 + /[[ ${tax} ]]/ ) / 120));
document.getElementById("msg").innerHTML = "include tax: " + res;
}

◆index.html

<!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org">
<head> <link th:substituteby="common/head :: common_link" /> <title>top page</title> </head> <body> <h1 th:text ="#{content.title}">Helo page</h1> <p id="msg"></p> <input type="text" id="text1" /> <button onclick="action()">click</button> </body>
</html>

◆HeloController.java
@Controller
public class HeloController {

@RequestMapping("/{tax}") public ModelAndView index(@PathVariable int tax, ModelAndView mav) { mav.setViewName("index"); mav.addObject("tax", tax); return mav; }

}

◆確認したこと
SampleJs.jsファイルの/[[ ${tax} ]]/ の箇所がうまく動いていない感じがします。
こちらを仮に「1000000」とかにすると<button onclick="action()">click</button>
設定している箇所が動くのですが、/[[ ${tax} ]]/に戻した場合に、やはり動作しない形になります。

 大変申し訳ございませんが、ご教授お願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

通常のJSファイルでは タイムリーフのインライン処理は動きません。

コントローラーを経て JS ファイルの内容が返るような実装をしてください。

投稿2017/12/24 14:57

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問