实用ExtJS教程100例-005:自定义对话框Ext.MessageBox.show

简介:

我们对ExtJS对话框进行了三篇演示:

通过上面三篇内容的演示,相信你已经基本上了解了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

运行我们的示例,效果图如下【ExtJS自定义对话框在线示例,包含广告】:

image

我们可以使用自定义对话框显示之前所有的效果。

自定义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教程网站起飞网上面,如果转载请保留本段声明,谢谢合作。

如果认为此文对您有帮助,别忘了支持一下哦!

作者: 齐飞
声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论,与本人所在单位没有直接利益关系。非商业,未授权,贴子请以现状保留,转载时必须保留此段声明,且在文章页面明显位置给出原文连接。

转载:http://www.cnblogs.com/youring2/p/extjs-100-examples-005-custom-messagebox.html
目录
相关文章
Visual Studio C# CS0006 C# 未能找到元数据文件
Visual Studio C# CS0006 C# 未能找到元数据文件
411 0
Visual Studio C# CS0006 C# 未能找到元数据文件
element-plus 树形控件结合下拉列表
要将Element Plus的Tree控件与下拉列表结合起来,可以使用Element Plus的Select控件和Tree控件的插槽来实现。
768 0
|
网络协议 安全 数据可视化
LDAP 是个啥你知道吗?
LDAP 是个啥你知道吗?
513 0
LDAP 是个啥你知道吗?
|
资源调度 前端开发 JavaScript
React 的antd-mobile 组件库,嵌套路由
React 的antd-mobile 组件库,嵌套路由
420 0
|
Java Spring 容器
深入Spring原理-4.Aware接口、初始化和销毁执行顺序、Scope域
深入Spring原理-4.Aware接口、初始化和销毁执行顺序、Scope域
262 0
|
12月前
|
机器学习/深度学习 算法
生成对抗网络(Generative Adversarial Networks,简称GANs)
生成对抗网络(GANs)由Ian Goodfellow等人于2014年提出,是一种通过生成器和判别器的对抗训练生成逼真数据样本的深度学习模型。生成器创造数据,判别器评估真实性,两者相互竞争优化,广泛应用于图像生成、数据增强等领域。
1643 1
|
XML Java Maven
WebService客户端调用的5种常见方式
本文介绍了在Java中创建和调用WebService的方法,包括服务端的搭建、配置类的添加以及客户端的多种调用方式(如使用JDK原生代码、wsimport命令、动态调用、代理工厂及HttpClient)。文中详细展示了每种方法的实现步骤和示例代码,强调了服务端与客户端参数实体类字段的兼容性,并推荐使用代理工厂方式进行调用。
2879 0
WebService客户端调用的5种常见方式
|
关系型数据库 MySQL 数据库
MySQL数据库:基础概念、应用与最佳实践
一、引言随着互联网技术的快速发展,数据库管理系统在现代信息系统中扮演着核心角色。在众多数据库管理系统中,MySQL以其开源、稳定、可靠以及跨平台的特性受到了广泛的关注和应用。本文将详细介绍MySQL数据库的基本概念、特性、应用领域以及最佳实践,帮助读者更好地理解和应用MySQL数据库。二、MySQL
921 5
|
Windows
window如何批量创建文件夹
【5月更文挑战第20天】window如何批量创建文件夹
1348 1
|
编解码 Android开发
【Android Studio】使用UI工具绘制,ConstraintLayout 限制性布局,快速上手
本文介绍了Android Studio中使用ConstraintLayout布局的方法,通过创建布局文件、设置控件约束等步骤,快速上手UI设计,并提供了一个TV Launcher界面布局的绘制示例。
376 1