2015-09-04 4 views
2

У меня есть кнопка, что ссылки на метод, давайте назовем это «метод», внутри UserController, который выглядит примерно так:Как передать переменную от контроллера к javascript после вычисления переменной?

def method 
    ***do stuff*** 
    @my_variable = value dependent on the do stuff part 
end 

Есть ли способ, чтобы получить доступ к переменной в моей JavaScript, когда это делается (в основном, когда он определен)?

+0

Возможно, вы захотите проверить драгоценность Gon: https://github.com/gazay/gon – bkahler

ответ

0

Если вы не хотите использовать окно. решение, вот другая идея попробовать.

Это то, что я делаю в своем show.html.erb, чтобы передать обратный геокодированный адрес для сопоставления точки в функции js, которая использует API карты google.

<!-- Must be set to pass instance vars to javascript --> 
<%= javascript_tag "var js_marker_lat = #{@location.latitude.to_json};" %> 
<%= javascript_tag "var js_marker_lng = #{@location.longitude.to_json};" %> 

В яваскрипте функции, можно использовать ВАР как обычно.

var latlng = new google.maps.LatLng(js_marker_lat, js_marker_lng); 

В контроллере, javascript_tag помощник не доступен, так что вы можете быть ограничены в использовании файлов html.erb для JS вары вещи. Пожалуйста, дайте мне знать, как это происходит.

Смежные вопросы