ユーザーが Twitter ブートストラップ モーダル ウィンドウ ボタンの確認ボタンをクリックすると、ページで削除アクションを実行しています。
2 つのボタンがあります。1 つはユーザーがアクションをキャンセルできるようにするもので、もう 1 つは確認するためのものです。
ユーザーが削除の確認ボタンをクリックすると、モーダルが非表示になっているときにアクションを実行します。たとえば、アニメーションを表示して実際にアイテムを削除できます。
ユーザーがいくつかの項目をクリックし、選択がキャンセル ボタンである場合、削除したい項目をクリックすると、選択がキャンセルされた要素に対しても削除が実行されます。
「非表示」イベントは、実行後に要素から切り離すべきではありませんか?
$('#confirmDeleteModal').on('hidden', function() {
イベントチェーンの変更を切り離すことができることは知っていますが、なぜこれが起こるのか$('#confirmDeleteModal').off('hidden').on('hidden', function() {
本当に理解できます。何か不足していますか?
コードは次のとおりです。
$(document).ready(function(){
$('.delete').on('click', function() {
var itemID = $(this).data('product-id')
$('#confirmDeleteModal').modal('show');
$('#confirmDelete').on('click', function() {
$('#confirmDeleteModal').on('hidden', function() {
// Here I do my stuff to perform deletion
$('#result').append('This method has been called for ' + itemID + ' <br />' )
});
});
});
});
私の質問を明確に明らかにしたことを願っています。JS Bin も用意しました: http://jsbin.com/inulaw/5/edit