私はbootstrap-switchを使用しており、 bootstrap-switch-railsで実装しています。すばらしい機能ですが、ajax 応答を使用してパーシャルをレンダリングするときに、永続性に問題があります。
ビューファイルがあります:
#### index.html.haml
#partial_id= render 'partial'
パーシャルをレンダリングします (ブートストラップ スイッチ トグル関数とクリック可能なボタンを含む):
#### _partial.html.haml
.switch{"data-off-label" => "OFF", "data-on-label" => "ON"}
%input{:checked => "", :type => "checkbox"}
%button.click-here
ここをクリック ボタンをクリックすると、ajax get リクエストがトリガーされます。
#### some_script.js.coffee
btn = $("#click-here")
btn.off "click"
btn.click (e) ->
$.ajax
type: "get"
dataType: "script"
url: "some_controller/some_action"
コントローラーがリクエストを受け取ります。
#### some_controller.rb
def some_action
respond_to do |format|
format.js
end
end
そして、次のように応答します。
#### some_action.js.erb
var partial = $("#partial_id");
partial.children().remove();
partial.append('<%= j render("partial") %>');
トグル機能の代わりに単純なチェックボックスが表示されるため、パーシャルが再レンダリングされると、bootstrap-switch からのスクリプト/スタイルシートがロードされません (またはそのようなもの)。どうすればいいの?