У меня есть форма, которая отображается через ajax. Форма также отправляется с ajax. Когда форма отправляется, она дважды отправляет запрос.Rails Форма Ajax отправляется дважды
Когда кто-то нажимает на ссылку «создать профиль», форма отображается через ajax рядом со ссылкой. Когда форма отображается, мне нужно включить некоторый javascript в начале файла представления, потому что форма требует этих js-файлов. Вот форма:
<%= javascript_include_tag "/assets/temp_js/jquery-1.8.3.min.js" %>
<%= javascript_include_tag "/assets/jquery_ujs.js" %>
<%= javascript_include_tag "/assets/temp_js/jquery.jscrollpane.min.js" %>
<%= javascript_include_tag "/assets/temp_js/jquery.c2selectbox.js" %>
<%= javascript_include_tag "/assets/temp_js/jquery.colorbox-min.js" %>
<%= javascript_include_tag "/assets/temp_js/functions.js" %>
<%= form_for @profile, :html => { :class => "clearfix" }, remote: true do |f| %>
<%= f.text_area :description, :title => "Describe yourself and what you do." %>
<%= f.file_field :pic, :class => "field file-field", :id => "file" %>
<%= f.submit "SAVE" %>
Файлы были уже загружены на странице в файле application.html.erb, но они должны быть загружены снова, когда форма отображается, так как элементы в виде требует JavaScript. Единственная проблема заключается в том, что два верхних файла javascript по какой-то причине заставляют форму публиковать дважды. Я не могу избавиться от них, потому что форма нуждается в них, но форма отправляется дважды с ними. Кто-нибудь знает, как это исправить?
Я видел несколько страниц переполнения стека, в которых говорится, что я должен удалить файлы js в папке с моими ресурсами, но мне нужны они для формы. Я также прочитал, что добавление «config.serve_static_assets = false» в development.rb устранит проблему, но это не так.
Заранее спасибо.
UPDATE:
Проблема, безусловно, должен делать с файлом jquery_ujs.js. Если я удалю это из приведенного выше кода формы, он не будет выполняться дважды.
вы можете попробовать без отправки файла? в вашем html отсутствует многоформатная? насколько я знаю, вам нужно передать файлы. – devanand
Спасибо, пробовал, но это не исправляет. Кроме того, когда я тестирую его и просматриваю форму, я не представляю картинку. – Philip7899
у вас есть какие-либо другие привязки к форме submit? используйте консоль браузера. – devanand