1

少し問題があります。Primefacesでgmapを使用していますが、スクリプトをロードする必要があります

<script src="http://maps.google.com/maps/api/js?sensor=true" type="text/javascript"/>

ただし、ユーザーロケールの言語に従ってスクリプトをロードする必要があります。

文字列を「ハードコーディング」せずにそれを行うにはどうすればよいですか?

私はこのようなことを試みました:

    <script src="http://maps.google.com/maps/api/js?sensor=true&amp;language="#{template.userLocale} type="text/javascript"/>
// {template.userLocale} has a string o the locale

手伝ってもらえますか?

4

1 に答える 1

1

HTML 構文エラーがあります。の言語を指定すると、最終的に得られるものは次のようになりますen

<script src="http://maps.google.com/maps/api/js?sensor=true&amp;language="en type="text/javascript"/>

(ブラウザでページを右クリックし、[ソースを表示] を実行して自分で表示します)

二重引用符を属性値の末尾に移動する必要があります。

<script src="http://maps.google.com/maps/api/js?sensor=true&amp;language=#{template.userLocale}" type="text/javascript"/>

そのため、HTML は次のようになります。

<script src="http://maps.google.com/maps/api/js?sensor=true&amp;language=en" type="text/javascript"/>

EL はテンプレート テキストでのみ使用できます。JSF は基本的に HTML コードを生成することを理解する必要があります。HTML<script src>属性と EL#{}は同期して実行されません。代わりに、JSF/EL がそれを生成し、生成された HTML が構文的に有効であることを確認する必要があるだけです。

于 2012-12-18T17:10:22.427 に答える