Я пытаюсь создать индексную страницу для категорий, чтобы отобразить все категории.Каждая строка имеет название категории и кнопки для удаления и редактирования категории.Когда я нажимаю кнопку редактирования, я хочу, чтобы строка была заменена на форму с текстовым полем с предварительно заполненным именем и кнопкой сохранения.Пока я нажал кнопку редактирования и отобразил форму редактирования внутри строки.Но когда я нажимаю кнопку Сохранить, ничего не происходит.Вроде совсем ничего.В консоли нет ошибок, в сети не отображаются звонки, в журнале сервера нет активности.Я думал, что добавляю весь необходимый код для обработки вызова, но на данный момент я не знаю, где искать.Может кто-нибудь, пожалуйста, посоветуйте?Я использую рельсы v 4.2.5.
Application.js
//this is for clicking edit and displaying Edit form inside the row
document.addEventListener("turbolinks:load", function() {
$("[name='edits']").on('ajax:complete', function(event, data, status) {
$(this).parent().parent().html(data.responseText)
})
})
//this is to handle click on save button
document.addEventListener("turbolinks:load", function() {
$('#edit-form').on('ajax:complete', function(event, data, status){
$('#categories').html(data.responseText);
})
})
Контроллер категории:
def edit
render partial: 'categories/edits'
end
def update
if @category.update(category_params)
flash[:success] = "Category #{@category.name} was saved successfully"
else
flash[:danger] = "There was an error please try again!"
end
render partial: 'categories/list'
end
Частичное редактирование формы:
<div>
<%= form_tag category_path, remote: true, method: :put, name: "edit-form" do %>
<div class="form-group row text-center col-md-12">
<div class="col-md-10">
<%= text_field_tag :name, @category.name,
placeholder: "Category Name", autofocus: true,
class: "form-control" %>
</div>
<div class="col-md-2">
<%= button_tag(type: :submit, class: "btn btn-primary") do %>
Save
<% end %>
</div>
</div>
<% end %>
</div>
В HTML я заметил, что поле ввода и кнопка находятся за пределами формы.Может ли это быть причиной проблемы?Вот так
<form></form>
<input>
<button></button>