0

わかりました。カスタム確認ボックス用にこのプラグインを実装しようとしていますが、戻り値に関しては少し迷っています。オリジナルは次のとおりです。

jQuery("a.confirm").click( function() { 

if ( confirm( '<?php _e( 'Are you sure?' ) ?>' ) ) return true; else return false;

});

そしてこれは私が実装しようとしているものです:

$("a.confirm").click(function(){

    var elem = $(this).closest('.item');

    $.confirm({
        'title'     : 'Delete Confirmation',
        'message'   : 'You are about to delete this item. <br />It cannot be restored at a later time! Continue?',
        'buttons'   : {
            'Yes'   : {
                'class' : 'blue',
                'action': function(){
                    elem.slideUp();
                }
            },
            'No'    : {
                'class' : 'gray',
                'action': function(){}  // Nothing to do in this case. You can as well omit the action property.
            }
        }
    });

実際には、クリックイベントを取得して、最初のイベントではなく2番目のイベントを認識し、正しく戻る必要があります。今クリックすると、オリジナル(ブラウザのデフォルト)が表示され、その後2番目が表示されます。「ifステートメント」は私を失望させるものだと思います。

何か案は?

4

1 に答える 1

1

まず、jQueryclickメソッドは jQuery オブジェクトを返します。に渡された無名関数で返すように指定したものは何も返しません.click()

次に、if ステートメントに構文エラーがあります。次のように記述します。

if ( confirm( "<?php _e( 'Are you sure?' ) ?>" ) ){
    return true;
} else {
    return false;
}
于 2012-04-17T01:17:36.143 に答える