良い一日、私は今数時間私を悩ませている問題を抱えています。それは非常に簡単です。複合コンポーネントがレンダリングされるときにJavaScriptを呼び出し/実行しようとします。htmlタグ本体とonloadでできることのように。
実行するインラインJavaScriptを参照するにはどうすればよいですか?
<cc:implementation>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false" />
<div id="#{cc.clientId}" >
<div id="map_canvas" style="width: 850px; height: 350px; padding: 1px; border: darkblue" />
<script>init();</script>
<script type="text/javascript">
var map = null;
function init() {
var latlng = new google.maps.LatLng(51.5001524, -0.12623619);
var myOptions = {
zoom: 7,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
</script>
</div>
</cc:implementation>
this.init()、#{cc.clientId} .init()を試してみましたが、コンテキストでJSが見つかりません。JSF / ajaxコンポーネントから実行すると、「init();」だけで正常に動作します。