форма_не отправляется как AJAX - PullRequest
0 голосов
/ 26 февраля 2019

В моем приложении есть форма, которую я объявляю следующим образом:

= form_with model: project, remote: true, method: :put do |f|
  = f.select :selected_draw, options_for_select(project.draws.pluck(:number, :id), draw.id), {}, class: 'form-control', onchange: "this.form.submit()"

И я не могу заставить ее отправлять как удаленную форму, даже если вВ других частях моего приложения я использую удаленные формы, и в этой форме оно устанавливает атрибут data-remote в форме.Может кто-нибудь сказать мне, что я могу делать не так?

1 Ответ

0 голосов
/ 26 февраля 2019

Использование this.form.submit() не вызывает событие submit, поэтому обратные вызовы Rails для обработки его как удаленной формы не вызываются.

Вместо этого используйте onchange="Rails.fire(this.form, 'submit')".Таким образом, вы указываете объектам Rails javascript запускать событие.

РЕДАКТИРОВАТЬ: это использует rails-ujs, я не уверен, что то же самое с jquery-ujs, хотя

...