使用 jQuery UI Dialog
今天用到了客户端的对话框,把 jQuery UI 中的对话框学习了一下。
准备 jQuery 环境
首先,我们创建一个按钮,点击这个按钮的时候,将会弹出一个对话框。
为了设置这个按钮点击的事件,需要准备 jQuery 的环境。
在 ready 中设置按钮的点击事件。
2 // 初始化
3 $("#btn").click(function() {
4 alert("btn 被点击啦!");
5 }
6 );
确认这一步没有问题。
准备对话框
第二步,需要准备对话框的内容。这些内容来自 jQuery UI 的演示文件。
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 的对话框,需要增加这些文件的引用。
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 文件夹中的内容都复制过来。
在 ready 函数中,同时也初始化这个对话框。
2 // 初始化
3 $("#btn").click(function() {
4 alert("btn 被点击啦!");
5 });
6
7 // 初始化对话框
8 $("#dialog-confirm").dialog();
9 });
现在,打开这个页面的时候,就已经可以看到对话框了。
通过按钮弹出对话框
我们希望页面上初始化的时候看不到这个对话框,在点击按钮的时候再出现。那么需要这几个工作。
先给对话框增加一个默认不显示的样式。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
2 {
3 autoOpen: false
4 }
5 );
6
在按钮的点击事件中,弹出这个对话框。
2 // alert("btn 被点击啦!");
3 $("#dialog-confirm").dialog("open");
4 });
如果传递 close ,将会关闭对话框。
实现模式对话框
在实际应用中,我们经常需要实现模式对话框,在 Web 中需要增加一个遮罩层来挡住底层的元素,模拟模式效果,这可以在初始化对话框的时候,传递一个参数 modal: true 来实现。修改之后的初始化代码成为:
2 {
3 modal: true, // 创建模式对话框
4 autoOpen: false, // 只初始化,不显示
5 }
6 );
增加对话框的按钮
可以为对话框增加任意的按钮,并自定义按钮的事件处理。我们先增加两个按钮,一个确定,一个取消,并让他们先关闭对话框。
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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?