Rails 3.0.9 バージョンと jquery を使用しています。データベースなしでこの宝石を使用しています。地図表示のみに使用し、その上にKMLファイルを表示します。このために私は使用しました:
<div id='ajax_map'>
<% @kmlurl="http://mysite/file1.kml" %>
<%= gmaps( :kml => { :data => "[{ url: #{@kmlurl.inspect}}]" } ) %>
</div>
すべての素晴らしいショー。
リンク (@ kmlurl) を変更してボタンをクリックすると、この新しい KML ファイルでマップが更新されます。次のコードで別のアクション js.erb を使用します。
$('#ajax_map').html('<%= @kmlurl="http://mysite/file2.kml" %>'+'<br />'+'<%= gmaps( :kml => { :data => "[{ url: #{@kmlurl.inspect}}]" } ) %>');
しかし、彼は DIV を更新しません。「js.erb」は正常にレンダリングされ、gmaps() のメソッドを使用せずに、通常は @kmlurl を返します。タグの「.Html.erb」でこの同じコードをテストしたところ、新しいファイルが読み込まれましたが、もちろん、ページが読み込まれたときだけです。どうすればこの問題を解決できますか?