используя и: url, и: функцию в наблюдаемую форму - PullRequest
1 голос
/ 30 июля 2009

Есть ли способ сгенерировать как вызов функции Javascript, так и вызов Ajax в одном и том же теге наблюдении? Например, что-то вроде этого:

<%= observe_form 'user_filter_form', :url => { :action => :process }, :function => :fix_fields %>

Спасибо !!

Ответы [ 2 ]

0 голосов
/ 21 октября 2009

Используйте опции :before или :after вместо :function, в зависимости от того, хотите ли вы, чтобы ваша функция вызывалась до или после запроса Ajax.

См. Документацию по link_to_remote помощнику для общих опций, которые могут быть переданы всем помощникам Ajax, таким как observe_form

0 голосов
/ 05 октября 2009

Ваша лучшая ставка здесь - копаться в реальном JavaScript, а не полагаться на помощников. Помощники могут получить вас только так далеко. То, что вы хотите, это что-то вроде этого:

<script type="text/javascript">
  new Form.EventObserver('user_filter_form', function(element, value){
    fix_fields();
    new Ajax.Request("/YOUR_CONTROLLER/process");
  }
</script>

Однако, если вы действительно хотите положиться на помощников Rails, вы можете сделать что-то вроде:

<%= observe_form 'user_filter_form', :function => "fix_fields(); #{remote_function(:url => { :action => :process })}" %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...