web-dev-qa-db-ja.com

jqueryuiダイアログにボタンを追加

このjqueryuiダイアログにボタンを追加できません。できれば例を挙げてください。ありがとう。

<script type="text/javascript">
    $(document).ready(function () {
        //setup new person dialog
        $('#dialog2').dialog({
            autoResize: true,
            show: "clip",
            hide: "clip",
            height: 'auto',
            width: '1000',
            autoOpen: false,
            modal: true,
            position: 'top',
            draggable: false,
            title: "انتخاب درخواست",
            open: function (type, data) {
                $(this).parent().appendTo("form");
            }
        });

        $('#viewfaktor').dialog({
            autoResize: true,
            show: "clip",
            hide: "clip",
            height: 'auto',
            width: '1000',
            autoOpen: false,
            modal: true,
            position: 'top',
            draggable: true,
            title: "مشاهده صورت ریز",
            open: function (type, data) {
                $(this).parent().appendTo("form");
            }
        });


        $('#msgBox').dialog({


            autoResize: true,
            show: "clip",
            hide: "clip",
            height: 'auto',
            width: 'auto',
            autoOpen: false,
            modal: true,
            position: 'center',
            draggable: false,



            open: function (type, data) {
                $(this).parent().appendTo("form");
            }


        });



    });

    function showDialog(id) {
        $('#' + id).dialog("open");
    }

    function closeDialog(id) {
        $('#' + id).dialog("destroy");
    }



</script>
15
Shahin
$('#msgBox').dialog({
    autoResize: true,
    show: "clip",
    hide: "clip",
    height: 'auto',
    width: 'auto',
    autoOpen: false,
    modal: true,
    position: 'center',
    draggable: false,

    open: function (type, data) {
        $(this).parent().appendTo("form");
    },

    buttons: { "OK": function() { $(this).dialog("close"); } } 
});
23
Phil.Wheeler

ダイアログの作成後にボタンを動的に追加したい場合もあります。質問で私の 回答 を参照してください ダイアログボックスにボタンを動的に追加します

var mydialog = ... result of jqueryui .dialog()
var buttons = mydialog.dialog("option", "buttons"); // getter
$.extend(buttons, { foo: function () { alert('foo'); } });
mydialog.dialog("option", "buttons", buttons); // setter
27
JJS

すでに開いているダイアログにボタンを追加する場合は、次のようにすることができます。

var buttonSet = $('#dialog').parent().find('.ui-dialog-buttonset');
var newButton = $('<button>My New Button</button>');
newButton.button().click(function () {
    alert('My new button clicked');
});
buttonSet.append(newButton);
12
Dale

ここに例があります

これを関数に追加します。

buttons: {
                OK: function() { //submit
                    $( this ).dialog( "close" );
                },
                Cancel: function() { //cancel
                    $( this ).dialog( "close" );
                }
            }

だからあなたは得る

    $('#msgBox').dialog({


                autoResize: true,
                show: "clip",
                hide: "clip",
                height: 'auto',
                width: 'auto',
                autoOpen: false,
                modal: true,
                position: 'center',
                draggable: false,
                buttons: {
                OK: function() { //ok
                    $( this ).dialog( "close" );
                },
                Cancel: function() { //cancel
                    $( this ).dialog( "close" );
                }
            }
                open: function (type, data) {
                    $(this).parent().appendTo("form");
                }


            });
6
Tim