0

GEM 呼び出し best_in_place で作業しています: https://github.com/bernat/best_in_place

新しい todo アイテムの作成は、次の方法で行います。

<%= best_in_place @user, :name, :type => :input, :nil => "Click me to add content!" %>

respond_to :html, :json, :js

def todo_item_fast_create
    @todo_list = TodoList.find(params[:id])
    @todo_item = @todo_list.todo_items.new(params[:todo_item])
    @todo_item.save
    respond_with @todo_item
end

レスポンスコードはJSONなのですが、JSテンプレートを呼び出してDOMを操作したいのですが、可能でしょうか?

4

1 に答える 1

0

次のようなファイル名でビュー テンプレートを作成する必要があります。todo_item_fast_create.js.erbこのファイルは、そのアクションが呼び出されたときに提供されます。:remote => trueこのアクションを呼び出すボタンまたはリンクに追加する必要がある場合があります。

これは私の JS ファイルの 1 つです: new.js.erb (新しいエクスポートをスケジュールするときに呼び出されます)。

$("#export_modal").html("<%= escape_javascript(render("new")) %>");
<!-- trigger the modal to open -->
$("#export_modal").modal('show');

$("#popover1").popover();

への呼び出しescape_javascript(render("new"))は js 応答にパーシャルをレンダリングし、js に DOM の更新を処理させます。

于 2013-01-17T17:30:23.943 に答える