2016-08-08 4 views
0

Я отправляю var в rails, чтобы использовать его в представлении, у меня есть имя файла js charts.js.erb, который вызывается и Мне нужно использовать вар в том, что JS файл, но равен нулюв rails Я отправляю var для просмотра, но в js-файле nil

в моем контроллере есть метод

def index 
    @asd = 'hellow' 
    end 

на мой взгляд, я могу сделать

.div= @asd 

, но в моем файла JavaScript

alert('<%= @asd %>'); 

@asd вар равен нуль, я опробованный с помощью другого кода рубинового А.Н. работает, но вары не работают

+0

Это предупреждение в ту же точку зрения, как ваш DIV? Если да, это должно сработать. Если это где-то в активах/javascripts, то нет, это не должно работать. –

+0

Попробуйте использовать response_to block. –

+0

NO @SergioTulentsev, у меня есть файл charts.js, прикрепленный к этому js, и это предупреждение не показывает anithing. Я тестирую объявления var и nil – jacr1614

ответ

2

Это не так, как Еврорадио работает с JavaScript. Файлы JS генерируются до запуска, поэтому у них нет доступа к таким динамическим значениям сервера.

Образец, за которым я обычно следую, заключается в размещении генерируемого сервером значения где-то в DOM для получения JS.

<div id="asd" data-asd="<%= @asd %>"> 

Затем, если вы используете JQuery, например:

var asd = $('#asd').data('asd');