【www.gdgbn.com--jquery】

天用到了客户端的对话框,把 jquery ui 中的对话框学习了一下。

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

1


 

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

1 <script type="text/网页特效" src="scripts/jquery-1.4.2.js"></script>
 

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

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


 

确认这一步没有问题。

 

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

 

1
2        


3            
4             these items will be permanently deleted and cannot be recovered. are you sure?


5

 

为了使用 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-bundlethemesbase 文件夹中的内容都复制过来。

1 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
2    


3        
4         these items will be permanently deleted and cannot be recovered. are you sure?


5


 

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

在初始化对话框的时候,传递一个参数 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 });

本文来源:http://www.gdgbn.com/wangyezhizuo/29157/