• 使用 jQuery UI Dialog


    今天用到了客户端的对话框,把 jQuery UI 中的对话框学习了一下。

    准备 jQuery 环境

    首先,我们创建一个按钮,点击这个按钮的时候,将会弹出一个对话框。

    1 <input type="button" value="删除" id="btn" />

    为了设置这个按钮点击的事件,需要准备 jQuery 的环境。

    1 <script type="text/javascript" src="scripts/jquery-1.4.2.js"></script>

    在 ready 中设置按钮的点击事件。

    1 $(function() {
    2    // 初始化
    3    $("#btn").click(function() {
    4        alert("btn 被点击啦!");
    5   }
    6 );

    确认这一步没有问题。

    准备对话框

    第二步,需要准备对话框的内容。这些内容来自 jQuery UI 的演示文件。

    1 <div id="dialog-confirm" title="Empty the recycle bin?" >
    2         <p>
    3             <span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>
    4             These items will be permanently deleted and cannot be recovered. Are you sure?</p>
    5 </div>

    为了使用 jQuery UI 的对话框,需要增加这些文件的引用。

    1 <script type="text/javascript" src="scripts/jquery.ui.core.js"></script>
    2 <script type="text/javascript" src="scripts/jquery.ui.widget.js"></script>
    3 <script type="text/javascript" src="scripts/jquery.ui.mouse.js"></script>
    4 <script type="text/javascript" src="scripts/jquery.ui.button.js"></script>
    5 <script type="text/javascript" src="scripts/jquery.ui.draggable.js"></script>
    6 <script type="text/javascript" src="scripts/jquery.ui.position.js"></script>
    7 <script type="text/javascript" src="scripts/jquery.ui.dialog.js"></script>

    增加样式

    jQuery UI 中使用了大量的样式来修饰,需要引用 jQuery UI 的样式,注意,jquery.ui.all.css 这个文件引用了大量的其他样式文件,将 jQuery UI 中 \development-bundle\themes\base 文件夹中的内容都复制过来。

    1 <link type="text/css" href="styles/jquery.ui.all.css" rel="stylesheet" />

    在 ready 函数中,同时也初始化这个对话框。

    1 $(function() {
    2     // 初始化
    3     $("#btn").click(function() {
    4         alert("btn 被点击啦!");
    5     });
    6 
    7     // 初始化对话框
    8     $("#dialog-confirm").dialog();
    9 });

    现在,打开这个页面的时候,就已经可以看到对话框了。

    通过按钮弹出对话框

    我们希望页面上初始化的时候看不到这个对话框,在点击按钮的时候再出现。那么需要这几个工作。

    先给对话框增加一个默认不显示的样式。style="display: none",这样默认就不会看到这一部分。

    1 <div id="dialog-confirm" title="Empty the recycle bin?" style="display: none">
    2     <p>
    3         <span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>
    4         These items will be permanently deleted and cannot be recovered. Are you sure?</p>
    5 </div>

     然后,在初始化对话框的时候,也不显示,仅仅完成初始化工作。

    在初始化对话框的时候,传递一个参数 autoOpen: false

    1 $("#dialog-confirm").dialog(
    2     {
    3         autoOpen: false
    4     }
    5 );
    6 

    在按钮的点击事件中,弹出这个对话框。

    1 $("#btn").click(function() {
    2     // alert("btn 被点击啦!");
    3     $("#dialog-confirm").dialog("open");
    4 });

     如果传递 close ,将会关闭对话框。

    实现模式对话框

    在实际应用中,我们经常需要实现模式对话框,在 Web 中需要增加一个遮罩层来挡住底层的元素,模拟模式效果,这可以在初始化对话框的时候,传递一个参数 modal: true 来实现。修改之后的初始化代码成为:

    1 $("#dialog-confirm").dialog(
    2     {
    3         modal: true,             // 创建模式对话框
    4         autoOpen: false,         // 只初始化,不显示
    5      }
    6 );

    增加对话框的按钮

    可以为对话框增加任意的按钮,并自定义按钮的事件处理。我们先增加两个按钮,一个确定,一个取消,并让他们先关闭对话框。

     1 // 初始化对话框
     2 $("#dialog-confirm").dialog(
     3 {
     4     modal: true,             // 创建模式对话框
     5     autoOpen: false,
     6     buttons: {
     7         "Ok"function() {
     8              $(this).dialog('close');
     9         },
    10         "Cancel"function() {
    11             $(this).dialog('close');
    12         }
    13     }
    14 });

     jQuery UI 下载地址:http://jqueryui.com/download 

    下载完整示例 

    jQuery UI Dialog 的详细使用说明

  • 相关阅读:
    常见的java异常——java.lang.IllegalStateException: Ambiguous handler methods mapped for HTTP path
    sqlyong到期后怎么办
    解决Jsp与Java后台之间url传值中文乱码问题
    jsp页面获取当前系统时间
    ajax异步发送时遇到的问题
    Shell 基本运算符
    tcp的半连接与完全连接队列(三)源码分析
    tcp的半连接与完全连接队列(二)
    TCP连接的ISN、连接建立超时及TCP的长短连接
    /proc/sys/net/ipv4/下各参数含义
  • 原文地址:https://www.cnblogs.com/haogj/p/1956267.html
Copyright © 2020-2023  润新知