Получение rails 3.1 работа с ajax и jquery - PullRequest
0 голосов
/ 07 ноября 2011

Я знаю, что это глупые вопросы, и у меня есть очень похожие вопросы, но ни один из них не решает мою проблему:

#application.js
//= require jquery
//= require jquery_ujs
//= require_tree .

#form
<%= form_for @comments, :remote => true, do |comment| %>
.....
<% end %>

#controller
def create
  @comments = Comment.new params[:posts]
  if @posts.save
    respond_to do |format| 
      format.html {render 'something'}
      format.js {render :content_type => 'text/javascript', :layout => false}
    end    
  end

#app/view/comment/create.js.erb
alert("hello world, please work!");

С помощью кода я просто хочу добавить комментарии, не обновляя страницуи сообщения добавляются на страницу.В любом случае, когда я отправляю сообщение, оно всегда переходит в строку «reply_to» format.html, которую я понятия не имею, почему.Когда я смотрю на сгенерированную форму, она правильно читается с удаленными наборами данных:

<form accept-charset="UTF-8" action="...." data-remote="true" id="..." method="post"

Когда я смотрю на HTTP, принимаю, что это

HTTP_ACCEPT: "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" even I set the content_type to be text/javascript.  

Я обнаружил, что один говорит, чтодобавив charset: content_type => 'text / javascript; charset = UTF-8' поможет, но это не волшебство.

Я также пытаюсь добавить это в application.js, но тоже без магии

$(function() {
  $.ajaxSetup({
  'beforeSend': function(xhr) {
  xhr.setRequestHeader("Accept", "text/javascript");
  }
  });
});

Кто-нибудь может мне помочь?И, между прочим, ошибки в моем сервере Webbrick показывают «406 недопустимая ошибка что-то».Я действительно разочарован этим.Я подозреваю что-то о типе контента, что я делаю это неправильно ...

1 Ответ

0 голосов
/ 07 ноября 2011

Попробуйте установить атрибут типа данных в форме.

Ссылка: http://www.alfajango.com/blog/rails-3-remote-links-and-forms-data-type-with-jquery/#example

...