Я использую версию Rails 3.0.9 и jquery. Я использую этот камень без базы данных. Он используется только для отображения карты и отображения на нем файла KML. Для этого я использовал:Обновить div с gmaps4rails (AJAX)
<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» в тегах, он загружает новый файл, но, конечно же, только когда страница загружается. Как я могу решить эту проблему?
Спасибо за ответ, но проблема осталась прежней, и ничего принципиально не изменилось. Когда вы нажимаете на ссылку и вызываете «othermap», карта не отображается. Это не работает с вызовом функции (gmaps()) в js.erb. – OLMER