prepend
div コンテンツへの ajax リクエストによって返された部分ビューを試みています。私はかなり長い間試みてきましたが、うまくいきたくないようです。
これが私のjavascript(jquery)コードです:
$("#new_post_form").bind "ajax:success", (event, data, xhr) ->
$("#feed").prepend(data)
投稿が作成されると、コントローラーは部分的なビューを返します。
def create
@post = Post.new(params[:post])
respond_to do |format|
if @post.save
format.html { redirect_to @post, notice: 'Post was successfully created.' }
format.js { render :partial => "posts/post", :locals => {:post => @post}}
format.json { render json: @post, status: :created, location: @post }
else
format.html { render action: "new" }
format.json { render json: @post.errors, status: :unprocessable_entity }
end
end
end
データが #feed に追加されない理由がわかりません。データは html 文字列ではなくオブジェクトだと思いますか?
どんな助けでも大歓迎です。ありがとう。
おまけ: ajaxを呼び出すフォーム
=simple_form_for(@post, :method => "post", :remote => true, :id => "new_post_form") do |f|
=f.error_notification
=f.text_area :description, :id => "post_box", :class => "span12"
%br
%div{:id=>"post_box_buttons"}
.input-append
=f.select("location_id", @college.locations.collect {|r| [ r.name, r.id ] }, { :include_blank => false })
=f.button :submit, :value => "Submit", :class => "btn btn-primary"