Jquery - UI - Dialog


jQuery UI Dialog常用的參數有:

1、autoOpen:默認true,即dialog方法創建就顯示對話框
2、buttons:默認無,用於設置顯示的按鈕,可以是JSON和Array形式:
{"確定":function(){},"取消":function(){}}
[{text:"確定", click: function(){}},{text:"取消",click:function(){}}]
3、modal:默認false,是否模態對話框,如果設置為true則會創建一個遮罩層把頁面其他元素遮住
4、title:標題
5、draggable:是否可手動,默認true
6、resizable:是否可調整大小,默認true
7、width:寬度,默認300
8、height:高度,默認"auto"

其他一些不太常用的參數:

1、closeOnEscape:默認true,按esc鍵關閉對話框
2、show:打開對話框的動畫效果
3、hide:關閉對話框的動畫效果
4、position:對話框顯示的位置,默認"center",可以設置成字符串或數組:
'center', 'left', 'right', 'top', 'bottom'
['right','top'],通過上面的幾個字符串組合(x,y)
[350,100],絕對的數值(x,y)
5、minWidth:默認150,最小寬度
6、minHeight:默認150,最小高度

 

使用方法:
$("...").dialog({
title: "標題",
//...更多參數
});

主要方法
jQuery UI Dialog提供了一些方法來控制對話框,僅列出常用的:

open:打開對話框
close:關閉對話框(通過close不會銷毀,還能繼續使用)
destroy:銷毀對話框
option:設置參數,即前面列出的參數
使用的時候作為dialog方法的參數:
復制代碼 代碼如下:
var dlg = $("...").dialog({
//...各種參數
});
dlg.dialog("option", { title: "標題" }); // 設置參數
dlg.dialog("open"); // 使用open方法打開對話框

主要事件
jQuery UI Dialog提供了一些事件,比如打開、關閉對話框的時候做一些額外的事情:

open:打開時
close:關閉時
create:創建時
resize:調整大小時
drag:拖動時
使用方法同參數的使用方法,比如在打開時隱藏關閉按鈕:
復制代碼 代碼如下:
$("...").dialog({
//...各種參數
open: function(event, ui) {
$(".ui-dialog-titlebar-close", $(this).parent()).hide();
}
});

JAVASCRIPT:

<script type="text/javascript">
    $(function () {
        //hover states on the static widgets
        $('#dialog_link, ul#icons li').hover(
            function () { $(this).addClass('ui-state-hover'); },
            function () { $(this).removeClass('ui-state-hover'); }
        );

        //初始化對話框
        $("#dialog").dialog
        ({
            autoOpen: false,
            width: 600,
            modal: true,
            resizable: false,
            buttons: {
                "Login": function () {
                    $.ajax({
                        type: 'post',
                        url: '/User/Login',
                        data: $('form').serialize(), //序列化對象參數
                        success:function(data){
                            $(this).dialog("close");
                            location.href = "/User/Testing";
                        }
                    });
                },
                "Cancel": function () {
                    $(this).dialog("close");
                }
            } 
        });

        //打開對話框
        $("#dialog_link").click(function () {
            $("#dialog").dialog("open");
            return false;
        });
    });
</script>

VIEW:

    <!-- jquery dialog -->
    <h2 class="demoHeaders">Dialog</h2>
            <p><a href="#" id="dialog_link" class="ui-state-default ui-corner-all"><span class="ui-icon ui-icon-newwin"></span>Open Dialog</a></p>
    <div id="dialog" title="LOGIN">
        @using (Html.BeginForm())
        {
        
            @Html.EditorFor(model => model.UserName) <br />
            @Html.PasswordFor(model => model.Password)      <br />
            @Html.TextBoxFor(model => model.VerificationCode)   
                <img id="verificationcode" alt="" src="@Url.Action("VerificationCode", "User")" />
                    <a id="trydifferent" style="cursor: pointer">換一張</a>     
        }
    </div>  


<script type="text/javascript">
    //刷新驗證碼
    $("#trydifferent").click(function () {
        $("#verificationcode").attr("src", "/User/VerificationCode?" + new Date());
    })

</script>
View Code

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM