したがって、シナリオは次のとおりです。
データベースには 4 つのエントリがあり、それらは 4 つのマップ ルートです。
各マップルートには、各ルートの座標を含む独自の XML ファイルがあります。xml からデータを取得して Google マップに書き込む ajax 関数を作成しました。
これはコードからの抜粋です
$.ajax({
type: 'GET',
url: '/route4.gpx',
dataType: 'xml',
success: function(track) {
var grids = [];
var bounds = new google.maps.LatLngBounds ();
$(track).find('trkpt').each(function() {
var lat = $(this).attr('lat');
var lon = $(this).attr('lon');
var point = new google.maps.LatLng(lat, lon);
grids.push(point);
bounds.extend(point);
このコードを 4 つの JavaScript ファイルに保存し、それぞれで URL 行が異なります (route1.gpx、route2.gpx など)。
私がしたいのは、show.html.erb ファイルで javascript_include_tag を変更して、関連する javascript ファイルに更新することです。
したがって、show.html.erb タグは次のようになります。
<%= javascript_include_tag "http://maps.google.com/maps/api/js?sensor=false" ,"http://code.jquery.com/jquery-1.9.1.min.js", "/js/script1.js" =%>
私が望むのは、別のページにアクセスしたときに変更する最後の参照です。
show/1 にリンクすると、javascript ファイルは「/js/script1.js」になります。
show/2 にリンクすると、javascript ファイルは「/js/script2.js」になります。
show/3 にリンクすると、javascript ファイルは「/js/script3.js」になります。
show/4 にリンクすると、javascript ファイルは「/js/script4.js」になります。
それで、これを達成するために javascript_include_tag に書き込む方法はありますか?
すべてのヘルプ/提案/コメントを歓迎します