2017-10-30 22 views
0

私は、次の要素を持つHTMLページを持っている:私はこのように、jQueryの機能と属性で、この要素を選択したいThymeleaf属性を持つ要素の選択方法は?

<input type="text" th:field="*{recipientName}"/> 

を:

$("[th:field='*{recipientName}']") 

しかし、私はこのエラーを取得:

Uncaught Error: Syntax error, unrecognized expression: [th:field='*{recipientName}'] 

この要素を選択するにはどうしたらよいですか?

+1

私の答えの最後に更新を見てください:) – delinear

答えて

1

あなたの問題は、コロン:は属性名には有効ではないため、セレクタは何も返さないということです。セレクターの名前を変更できない場合(つまり、コロンがThymeleaf要件の場合)、別の識別子を追加する必要があります。

フィールド名と値全体をデータ属性に入れることはありますか?例えばその後、

<input type="text" data-somevar="th:field=*{recipientName}" th:field="*{recipientName}"/>

そして、このようにそれを選択:

$("[data-somevar='th:field=*{recipientName}']");

アップデート:私はそれで遊んを持っていたし、それが表示されます渡すときにコロンをエスケープする場合には可能ですそれはjQueryのため、これはうまくいくはずです:

$("[th\\:field='*{recipientName}']");

Codepen example.

他の誰かが役に立つと思った場合に備えて、私は前の回答/説明を残します。

+0

これは完璧に、ありがとうございました。 – saidfagan

関連する問題