实用ExtJS教程100例-005:自定义对话框Ext.MessageBox.show
通过上面三篇内容的演示,相信你已经基本上了解了ExtJS的基本样式,这篇文章将演示如何使用自定义ExtJS对话框。
Ext.MessageBox.show演示
要显示自定义的对话框,我们需要用到Ext.MessageBox.show方法。先来看一个简单的例子:
Ext.get("btn1").on("click", function () {
Ext.MessageBox.show({
title: "地址",
msg: "请输入您的详细地址:",
width: 300,
buttons: Ext.MessageBox.OKCANCEL,
multiline: true,
fn: saveAddress,
animateTarget: "btn1",
icon: Ext.MessageBox.INFO
});
});
function saveAddress(btnId, text) {
if (btnId == "ok") {
alert(text);
}
else {
//其它的处理代码
}
}
看到了吧,Ext.MessageBox.show方法的参数是一个配置对象,配置中有title、msg、width、buttons等配置项,用来决定对话框的显示内容。
这些配置项的说明如下:
- title:标题
- msg:内容
- width:对话框窗口的宽度
- buttons:对话框底部显示的按钮,它可以是下面的枚举值:
- Ext.MessageBox.OK
- Ext.MessageBox.YES
- Ext.MessageBox.NO
- Ext.MessageBox.CANCEL
- 或者可以是一些按钮组合:
- Ext.MessageBox.OKCANCEL
- Ext.MessageBox.YESNO
- Ext.MessageBox.YESNOCANCEL
- multiline:为true的时候显示一个多行的输入框,默认为false
- fn:回调函数,它接收三个参数:
- buttonId:用户点击的按钮的id,如果是OK按,就是小写的ok。由于有四种按钮,所以它的值可以是:ok、no、yes、cancel
- text:在有文本框的对话框中,text为用户输入的值
- opt:传递给show方法的配置项
- animateTarget:显示打开/关闭动画时候的目标元素,可以是元素id或Ext.dom.Element对象
- icon:对话框中显示的图标,它的可用项有:
- Ext.MessageBox.INFO
- Ext.MessageBox.WARNING
- Ext.MessageBox.QUESTION
- Ext.MessageBox.ERROR
运行我们的示例,效果图如下

我们可以使用自定义对话框显示之前所有的效果。
自定义alert
Ext.get("btn2").on("click", function () {
Ext.MessageBox.show({
title: "提示",
msg: "您点击了按钮",
buttons: Ext.MessageBox.OK
});
});
自定义confirm
Ext.get("btn3").on("click", function () {
Ext.MessageBox.show({
title: "提示",
msg: "确定删除吗?",
buttons: Ext.MessageBox.OKCANCEL,
fn: function (btnId) {
if (btnId == "ok") {
alert("点击了确定按钮");
}
else {
}
}
});
});
自定义进度条对话框
Ext.get("btn4").on("click", function () {
Ext.MessageBox.show({
title: "进度条对话框",
msg: "正在处理,请稍候...",
progress: true
});
updateProgress(0);
});
我们的updateProgress()方法仍然使用ExtJS进度条对话框示例中的方法。
自定义等待对话框
Ext.get("btn5").on("click", function () {
Ext.MessageBox.show({
title: "等待对话框",
msg: "正在处理,请稍候...",
wait: true
});
Ext.defer(function () { Ext.MessageBox.close(); }, 3000);
});
实用ExtJS教程100例-005:自定义对话框Ext.MessageBox.show的更多相关文章
- 实用ExtJS教程100例-001:开天辟地的Hello World
ExtJS功能繁多,要想彻底的了解确实很困难.作为初学者,如何能找到一条快速的通道呢?我觉得,如果你有Javascript的基础,那就不要惧怕ExtJS的复杂,从动手开始,遇到问题,解决问题,积累经验 ...
- 实用ExtJS教程100例-003:进度条对话框Ext.MessageBox.progress
在上一篇内容中我们介绍了三种常用的MessageBox提示框,在这篇文章中,我们将演示如何在对话框中使用进度条. 进度条对话框 我们可以使用下面的代码来在MessageBox中显示一个进度条: Ext ...
- 实用ExtJS教程100例-004:等待对话框Ext.MessageBox.wait
在前面两节中,我们分别演示了ExtJS三种常用的对话框和ExtJS带有进度条的对话框.在本节内容中,我们来看看ExtJS中的等待对话框. 首先来看一个简单的例子[查看在线示例]: 这种对话框会一直滚动 ...
- 实用ExtJS教程100例-002:MessageBox的三种用法
在上一节中,我们用到了MessageBox,在本文中,我们将介绍一下ExtJS中常用的三种MessageBox. Ext.MessageBox.alert() 这个方法用来打开一个普通的对话框,对话框 ...
- 实用ExtJS教程100例-009:ExtJS Form无刷新文件上传
文件上传在Web程序开发中必不可少,ExtJS Form中有一个filefield字段,用来选择文件并上传.今天我们来演示一下如何通过filefield实现ExtJS Form无刷新的文件上传. 首先 ...
- 实用ExtJS教程100例-008:使用iframe填充ExtJS Window组件
上面两节中我们分别演示了ExtJS Window的常用功能 和 如何最小化ExtJS Window组件,在这篇内容中我们来演示一下如何使用iframe填充window组件. 思路很简单,首先创建一个w ...
- 实用ExtJS教程100例-011:ExtJS Form 使用JSON数据赋值和取值
上一节中我们演示了ExtJS Form的异步加载和提交数据,本节中我们将演示如何使用JSON数据为ExtJS Form中的字段赋值和取值. 系列ExtJS教程持续更新中,点击查看>>最新E ...
- 实用ExtJS教程100例-010:ExtJS Form异步加载和提交数据
ExtJS Form 为我们提供了两个方法:load 和 submit,分别用来加载和提交数据,这两个方法都是异步的. 系列ExtJS教程持续更新中,点击查看>>最新ExtJS教程目录 F ...
- 实用ExtJS教程100例-007:ExtJS中Window组件最小化
在上一节中我们演示了如何使用ExtJS的Window组件,这篇内容中我们来演示一下如何将窗口最小化. 要让ExtJS标题栏中显示最小化按钮并不麻烦,只需要设置 minimizable: true 即可 ...
随机推荐
- 【LOJ】#2585. 「APIO2018」新家
题解 成功把自己写自闭了 离散化之后再二分我是真不会算坐标啊我这个zz 先离散化所有坐标,然后对于每个位置维护一个最小前驱,然后线段树区间维护最小前驱 什么?位置一样?那就给每个大小为1的位置开个mu ...
- nginx静态资源缓存策略配置
1. 问题-背景 以前也经常用nginx,但用的不深,通常是简单的设置个location用来做反向代理.直到今天给客户做项目碰到缓存问题:客户有个app,只是用原生做了个壳,里面的内容都是用h5写的, ...
- 关于函数getline()(简单注意事项,不懂你怼我!!!)
关于getline()函数好使但是有毒: 有两种操作需要进行特殊处理: First: #include <iostream>#include <cstring>#include ...
- 了解java内存模型,看这里就够了
转载请注明作者与出处 程序计数器 线程私有 因为物理cpu并不多,所以jvm是对java里面的线程进行不停的切换执行,因为切换的执行速度太快,所以我们看到是并发执行.所以jvm在切换线程执行后,如果要 ...
- MAC配置DNS服务器
1.brew install dnsmasq 2.cp /usr/local/opt/dnsmasq/dnsmasq.conf.example /usr/local/etc/dnsmasq.conf ...
- 自制 COCO api 直接读取类 COCO 的标注数据的压缩文件
第6章 COCO API 的使用 COCO 数据库是由微软发布的一个大型图像数据集,该数据集专为对象检测.分割.人体关键点检测.语义分割和字幕生成而设计.如果你要了解 COCO 数据库的一些细节,你可 ...
- OSNIT信息收集分析框架OSRFramework
OSNIT信息收集分析框架OSRFramework OSNIT是一种从公开的信息资源搜集信息的有效方式.Kali Linux集成了一款专用分析工具集OSRFramework.该工具集包含多个常用工具 ...
- 【BZOJ 1005】 1005: [HNOI2008]明明的烦恼 (prufer数列+高精度)
1005: [HNOI2008]明明的烦恼 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 4981 Solved: 1941 Description ...
- Atcoder Grand Contest 010 C - Cleaning 树贪心(伪)
C - Cleaning 题目连接: http://agc010.contest.atcoder.jp/tasks/agc010_c Description There is a tree with ...
- webdings 和 wingdings 字体
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...