Я новичок в Rails, и у меня довольно простая проблема с вызовом функций JavaScript из представления.В Rails 2 я бы сделал ...
= javascript_tag "name(arguments)"
, где функция javascript "name" была расположена в моем файле application.js.Тем не менее, это не похоже на работу в Rails 3?Или я что-то упустил?Я некоторое время искал в Google, но не нашел ответа.
ОБНОВЛЕНИЕ:
ОК, поэтому я посмотрел на источник двух разных способов (используя javascript_tag и фильтр jmlascript haml), как было предложено.И это очень странно, потому что источник HTML кажется идентичным?Помимо разницы в двойных и одинарных кавычках при объявлении типа скрипта.
FIRST: с использованием javascript_tag, который не работает
= javascript_tag "number_interval(#{fact.current_value}, #{fact.growth_per_second}, #{fact.decimal_number}, '#{dom_id(fact, "number")}'"
Source ...
<div id='number_number_interval_727'>loading</div>
<script type="text/javascript">
//<![CDATA[
number_interval(6952596670.36814, 2.33002440293917, 0, 'number_number_interval_727'
//]]>
</script>
SECOND: с использованием фильтра haml javascript и работает
:javascript
number_interval(#{fact.current_value}, #{fact.growth_per_second}, #{fact.decimal_number}, '#{dom_id(fact, "number")}')
Источник ...
<div id='number_number_interval_727'>loading</div>
<script type='text/javascript'>
//<![CDATA[
number_interval(6952596917.02179, 2.33002440293917, 0, 'number_number_interval_727')
//]]>
</script>
Ну, я думаю, я просто придерживаюсь фильтра хамла!