Итак, у меня есть поле автозаполнения, где пользователь может выбрать существующий или создать новый тег.Если пользователь создает новый тег, он нажимает кнопку формы и отправляет запрос POST в действие обновления в контроллере видео, который обрабатывает запрос как AJAX, и тег отображается над полем.
Теперь проблема в том, когда пользователь выбирает тег из списка предложений.По умолчанию плагин автозаполнения пользовательского интерфейса jQuery добавляет выбранный элемент в поле, а затем пользователь должен нажать кнопку формы.Тем не менее, я хочу сэкономить пользователю некоторые усилия, автоматически добавляя тег сразу после его выбора из предложенного списка.Поэтому у меня есть этот код в моем файле application.js:
select: function(event, ui) {
var url = $('.edit_video').attr('action');
var val = ui.item.topic.name;
$.ajax({type:"PUT", url:url, data:{video:{topic_names:val}}});
return false;
}
, который успешно отправляет запрос PUT на действие обновления, когда элемент выбирается из списка.Тем не менее, запрос НЕ обрабатывается как AJAX.Тег успешно добавлен, но только после обновления страницы.Я хочу, чтобы запрос был обработан как AJAX.Как я могу это сделать?
Я предполагаю, что проблема связана с тем, что когда вы нажимаете кнопку формы, опция :remote => true
заставляет рельсы искать format.js
(который у меня естьв моем действии обновления), но когда кнопка не нажата, и элемент выбран из списка, Rails не знает, искать JS.Как я узнаю об этом?