data-remote true, определяющий обратный вызов - PullRequest
7 голосов
/ 21 января 2012

У меня есть форма, которую я хотел бы отправить с опцией data-remote=true.Но я хочу, чтобы мое действие создания возвращало json, а затем обрабатывалось с помощью javascript, который уже существует на странице.Могу ли я установить обратный вызов с тегом form_for?

Что-то похожее на это:

=form_for @foo,:remote => true, :success => "my_js_stuff" do |f|

Ответы [ 2 ]

9 голосов
/ 22 января 2012

Я не уверен, будет ли это возможно без переопределения рельсов из помощника. Но вы можете использовать jquery ajax-события и связываться с ними. Например:

$('form#sign-up-form').ajaxError(function(event, request, settings) {
 //do some stuff on error
})

$('form#sign-up-form').bind('ajax:success', function(evt, data, status, xhr){
//do some stuff on success
})
5 голосов
/ 21 января 2012

Вы захотите определить create.js.erb и / или update.js.erb для контроллера foo. Это вернет JavaScript, который вы выполните.

Оттуда вы можете выполнить javascript, который уже существует на странице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...