1

jquery uiモーダルダイアログを機能させる方法を見つけるのに多くの問題があります..モーダルダイアログはfalseを返すだけです...

フィドルはここで見ることができますhttp://jsfiddle.net/fVrFj/6/

    function modal_delete_pics(){
            $(function(){
              $( "#dialog:ui-dialog" ).dialog( "destroy" );

              $( "#dialog-confirm" ).dialog({
                resizable: false,
                height:140,
                modal: true,
                buttons: {
                    "delete": function() {
                       $( this ).dialog( "close" );

                                     return true;
                },
                    "cancel": function() {
                        $( this ).dialog( "close" );
                        return false;

                }
            }

        });
    });
};
    $('#clickme').click(function(){
        if(modal_delete_pics()==true){
           $('body').append('<div>deleted</div>');  
           }
          else{                   
             $('body').append('<div>canceled</div>');
              }
});

どうもありがとう!

4

1 に答える 1

4

別の関数 ( ) 内の$( "#dialog-confirm" ).dialog関数 ( ) 内に関数 ( ) があります。$(function()function modal_delete_pics()

また、最も内側の関数 ( $( "#dialog-confirm" ).dialog) からの戻り値はバブルアップしていません。

より簡単なアプローチを試すことができます:

$("#dialog-confirm").dialog({
        resizable: false,
        height: 140,
        modal: true,
        autoOpen: false,      
        buttons: {
            "delete": function() {
                //put your image delete code here
                $('body').append('<div>deleted</div>');
                $(this).dialog("close");
            },
            "cancel": function() {
                $('body').append('<div>canceled</div>');
                 $(this).dialog("close");
            }
        }
});

$('#clickme').click(function() {
    $("#dialog-confirm").dialog("open");
});​

フィドル: http://jsfiddle.net/fVrFj/10/

于 2012-04-30T00:03:48.820 に答える