0

jquery で選択したデータを確実に削除する場合、確認ダイアログボックスを表示してユーザーに通知するにはどうすればよいですか。ユーザーに削除するかどうかを尋ねてほしい。以下のコードは完全に機能しますが、その機能を使用したいと考えています。

<script type="text/javascript">
$(document).ready(function () {
    $('a.delete').click(function (e) {
        e.preventDefault();
        var parent = $(this).parent();
        $.ajax({
            type: 'POST',
            url: 'delete.php',
            data: 'ajax=1&delete=' + parent.attr('id').replace('record-', ''),
            beforeSend: function () {
                parent.animate({
                    backgroundColor: '#fbc7c7'
                }, 300)
            },
            success: function () {
                parent.slideUp(300, function () {
                    parent.remove();
                });
            }
        });
    });
});
</script>
4

5 に答える 5

2

実際のアクションを次のようにラップするだけです。

if (confirm('よろしいですか??')) { /* アクションはこちら */ }

編集:またはChrisが提案したように、よりフレンドリーなユーザー操作のためにjQueryダイアログボックスを使用します

于 2013-01-23T11:01:51.887 に答える
1

jqueryUIダイアログを使用してください。あなたの要件に合わせて完全に機能します。こちらを参照してください

于 2013-01-23T11:00:07.833 に答える
1
<script type="text/javascript">
$(document).ready(function(){
$('a.delete').click(function(e){
e.preventDefault();
if(confirm("do you want to delete this record ?")){
  var parent = $(this).parent();
  $.ajax({
    type: 'POST',
    url: 'delete.php',
    data: 'ajax=1&delete=' + parent.attr('id').replace('record-',''),
    beforeSend: function(){
    parent.animate({backgroundColor:'#fbc7c7'},300)
  },
  success: function(){
    parent.slideUp(300,function(){
       parent.remove();
    });
  }
  });
} 
});
});
</script>
于 2013-01-23T11:02:51.603 に答える
1
$('<div></div>').appendTo('body')
                    .html('<div><h6>Are you sure?</h6></div>')
                    .dialog({
                        modal: true, title: 'Delete message', zIndex: 10000, autoOpen: true,
                        width: 'auto', resizable: false,
                        buttons: {
                            Yes: function () {
                                // Do ajax request $(obj).removeAttr('onclick');                                
                                // $(obj).parents('.Parent').remove();

                                $(this).dialog("close");
                            },
                            No: function () {
                                $(this).dialog("close");
                            }
                        },
                        close: function (event, ui) {
                            $(this).remove();
                        }
                    });
于 2013-01-23T11:04:39.820 に答える
0

確認ダイアログボックスを使用できます。ユーザーが[削除]リンクをクリックすると、[本当に削除しますか?]というメッセージが表示されます。ansが正常な場合は、trueを返します。

コードはこんな感じです。

<script type="text/javascript">
$(document).ready(function(){
$('a.delete').click(function(e){
    e.preventDefault();
    var parent = $(this).parent();

    var check = confirm("Do you want to delete ?");
    if(check == true)
    {
        $.ajax({
            type: 'POST',
            url: 'delete.php',
            data: 'ajax=1&delete=' + parent.attr('id').replace('record-',''),
            beforeSend: function(){
                parent.animate({backgroundColor:'#fbc7c7'},300)
            },
            success: function(){
                parent.slideUp(300,function(){
                parent.remove();
            });
            }
        });
    }
});
});
</script>
于 2013-01-23T11:08:58.833 に答える