AJAX-запрос с Rails 3 и jQuery обрабатывается как HTML. - PullRequest
0 голосов
/ 11 августа 2010

У меня есть форма, которую я хочу отправить с AJAX, используя rails 3 и jquery. Проблема, с которой я сталкиваюсь, заключается в том, что rails также отвечает на запрос AJAX как HTML. После небольшого поиска я обнаружил, что это как-то связано с тем, что правильные заголовки Accept не передаются. Как мне это исправить?

Это код контроллера

  respond_to do |format|
    format.js { render 'user/create' }
    format.html { redirect_to ((params[:feed][:url].nil?)?url_for(:home) : params[:feed][:url]) }
  end

Кажется, он работает на Firefox друзей, и на моем Chrome тоже что-то не так с Firefox?

ОБНОВЛЕНИЕ: Кажется, что ошибка возникает, только когда я использую прокси-сервис в качестве JonDo, который, вероятно, меняет заголовки accept ... Есть ли способ заставить rails использовать формат js, если заголовок X-required-by нет?

Спасибо

Ответы [ 2 ]

4 голосов
/ 12 августа 2010

Ваш код контроллера выглядит правильно. Вы уверены, что добавили суффикс .js к URL-адресу AJAX в своей форме? Вот как ответчик знает, какой формат вы хотите для ответа. Формат по умолчанию - HTML, поэтому отсутствие суффикса будет выглядеть так, как будто он отвечает на запрос HTML.

0 голосов
/ 12 августа 2010

Вы, вероятно, неправильно установили dataType. Смотрите документы (это & ​​.post) Если вы установите dataType на "js", все будет хорошо!

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