Rails アプリでは、Twitter ブートストラップを使用しています。
以前はすべて正常に機能していましたが、突然モーダルが 2 回表示されるようになりました。何が起こっているのかわかりません..私のコードは以下のようなものです。
考案/登録/new.html.erb
<%= link_to "Terms of Service", terms_in_modal_path, {:class => "show-terms", :remote => true}
pages_controller
def terms_in_modal
respond_to do |format|
format.js
end
end
terms_in_modal.js.erb
$("#signup-modal").html('<%= escape_javascript render(:partial => "terms_in_modal") %>');
$('#show-terms').modal('show');
_terms_in_modal.html.erb
<div id="show-terms" class="modal hide fade in">
...
</div>
リンクをクリックすると、2 つのモーダルが表示され、出力 html は次のようになります。
<div id="signup-modal">
<div id="show-terms" class="modal hide fade in" style="display: block; ">
<div class="modal-header">
...
</div>
</div>
<div class="modal-backdrop fade in"></div>
<div class="modal-backdrop fade in"></div>
<div id="show-terms" class="modal hide fade in" style="display: block; ">
<div class="modal-header">
...
</div>
編集1
Heroku のステージング アプリでは、モーダルは正常に動作します。奇妙なことに、前回herokuをプッシュした後、モーダルとサインアップページに関連するものは何も編集していませんでした. 最近OSをMountain Lionに変えたので、OSの関係かもしれません。
編集2
「git push staging master」を実行して、モーダルが正常に動作するかどうか試してみましたが、正常に動作しています。非常に奇妙..