`

Ext弹出窗口

    博客分类:
  • Ext
ext 
阅读更多

Ext.MessageBox.alert()

Ext.MessageBox.alert()提供一个OK按钮。对应JavaScript中的alert()

定义:alert(Stringtitle,Stringmsg,[Function fn], [Object scope]) :Ext.MessageBox

该函数有4个参数:

Title:窗口标题

Msg:弹出窗口内容

Fn:回调函数,在单击按钮或单击右上角的关闭图标X后执行。并且携带一个参数,即按钮的Id。

Scope:作用范围。

 

示例:

// alert

Ext.get("alert").on("click",function() {

Ext.MessageBox.alert("标题","这是提示的内容",function(r) {

alert(r);

});

});

<input type="button" value="alert"id="alert">

在按钮alert上绑定click事件,单击时弹出alert窗口,单击OK按钮后,调用回调函数弹出按钮id

单击alert按钮,


单击OK按钮,


单击右上角的X,则返回cancel

 

24.2Ext.MessageBox.confirm()

选择对话框,提供一个Yes,一个No供用户选择是/否。对应JavaScript中的confirm()

定义:

confirm(Stringtitle,Stringmsg,[Function fn], [Object scope]) :Ext.MessageBox

该函数有4个参数:

Title:窗口标题

Msg:弹出窗口内容

Fn:回调函数,在单击按钮或单击右上角的关闭图标X后执行。并且携带一个参数,即按钮的Id。

Scope:作用范围。

 

示例:

// confirm

Ext.get("confirm").on("click",function() {

Ext.MessageBox.confirm("标题","确认执行此项操作吗?",function(r) {

alert(r);

});

});

<input type="button" value="confirm"id="confirm">


单击confirm按钮:

单击Yes返回yes;单击No返回No;单击X返回No

 

 

24.3Ext.MessageBox.prompt()

用户可以输入内容,对应JavaScript中的prompt();

定义:

prompt(Stringtitle,Stringmsg,[Function fn], [Object scope], [Boolean/Number multiline], [String value]) :Ext.MessageBox

 

参数:

Title:标题

Msg:内容

Fn:回调函数。

Scope:作用范围

Multiline:是否多行,默认单行。

Value:输入框的默认值。

24.3.1单行输入框

示例:

// prompt

Ext.get("prompt").on("click",function() {

Ext.MessageBox.prompt("提示","请输入你的名字",function(btn,value) {

alert("你选择了" + btn + ",你输入的内容是:" + value);

},this,false,"刘德华");

});

<input type="button" value="prompt"id="prompt">

 

单击prompt按钮:

单击OK返回OK,单击Cancel返回cancel,单击X返回cancel

 

24.3.2多行输入框

24.3.2.1使用Ext.MessageBox.prompt()函数实现

多行输入对话框,将multiline设置为TRUE即可。

// prompt

Ext.get("prompt").on("click",function() {

Ext.MessageBox.prompt("提示","请输入你的名字",function(btn,value) {

alert("你选择了" + btn + ",你输入的内容是:" + value);

},this,true,"刘德华");

});

<input type="button" value="prompt"id="prompt">

 

 

24.4.2.2使用Ext.MessageBox.show()实现

使用ext.MessageBox.show()函数,我们可以自行定义弹出窗口。

Ext.MessageBox.show({

title:"提示",

msg:"请输入你的名字",

width:300,

value:"刘德",

buttons:Ext.MessageBox.OKCANCEL,

multiline:true,

fn:function(btn,val) {

alert("你选择了" + btn + ",你输入的内容是:" + val);

}

});

 

参数:

Title:标题

Msg:弹出窗口提示内容

Width:弹出窗口宽度

Value:弹出窗口输入框默认值

Buttons:弹出窗口按钮

Multiline:是否多行输入

Fn:回调函数。

 

 

 

24.4自定义对话框

24.3.2.2中我们使用Ext.MessageBox.show()函数实现了能多行输入的提示窗口。

Show()函数中,buttons我们可以选择的按钮有:

CANCEL:cancel

OK:ok

OKCANCEL:ok and cancelbuttons

YESNO:yes and no buttons

YESNOCANCEL:yes、no、cancel buttons

 

弹出窗口的图标(icon):

ERROR:错误

INFO:消息

QUESTION:疑问

WARNING:警告

 

我们可以利用这些自定义按钮和图标。

例:

Ext.MessageBox.show({

title:"提示",

msg:"请输入你的名字",

width:300,

value:"刘德华",

buttons:Ext.MessageBox.OKCANCEL,

icon:Ext.MessageBox.ERROR,

multiline:true,

fn:function(btn,val) {

alert("你选择了" + btn + ",你输入的内容是:" + val);

}

});

效果:

 

24.5进度条

Ext.MessageBox提供了默认的进度条,只需要将progress设置为TRUE即可。

示例:

Ext.MessageBox.show({

width:300, // 弹出窗口宽度

title:"提示", // 弹出窗口标题

msg:"正在读取数据...", // 弹出窗口内容

progress:true, // 是否是进度条

closable:false // 是否可以关闭

});

 

效果:

但是,这样进度条是不会动的。

 

我们需要调用Ext.MessageBox.updateProgress()来更新进度条。

函数定义:

updateProgress(Numbervalue,StringprogressText,Stringmsg): Ext.MessageBox

 

 

 

 

24.5使用进度条保存数据

 

示例:

var box =Ext.MessageBox.show({

width:300,

title:"提示",

msg:"正在保存,请稍后...",

progress:true,

closable:false,

wait:true,

waitConfig:{

interval:500

}

});

 

Ext.Ajax.request({

url:"./jsp/progress.jsp",

params:{

date:new Date().toLocaleString()

},

method:"POST",

success:function(r) {

Ext.MessageBox.hide();

Ext.Msg.show({

title:"提示",

msg:r.responseText

});

},

failure:function(r){

Ext.MessageBox.hide();

Ext.Msg.show({

title:"提示",

msg:"操作失败"

});

}

});

});

 

Progress.jsp:

String date = request.getParameter("date");

System.out.println(date);

 

request.setCharacterEncoding("utf-8");

response.setCharacterEncoding("utf-8");

 

Thread.sleep(5000L);

response.getWriter().write("数据保存成功!提交时间:" + date);

 

jsp中,暂停5S模拟操作数据库的过程,然后返回成功信息。

效果:

单击保存后:


后台返回数据后:

 

24.6Ext.Window

示例:

// Create tabs and add it into window

var tabs= new Ext.TabPanel({

activeTab:0,

defaults:{autoScroll:true},

region:"center",

items:[

{title:"标签1",html:"内容1"},

{title:"标签2",html:"内容2"},

{title:"标签3",html:"内容3",closable:true}

]

});

 

var p = new Ext.Panel({

title:"导航",

width:150,

region:"west",

split:true,

collapsible:true

});

// Create a window

varwindow = new Ext.Window({

title:"登陆", // 窗口标题

width:700, // 窗口宽度

height:350, // 窗口高度

layout:"border",// 布局

minimizable:true, // 最大化

maximizable:true, // 最小化

frame:true,

constrain:true, // 防止窗口超出浏览器窗口,保证不会越过浏览器边界

buttonAlign:"center", // 按钮显示的位置

modal:true, // 模式窗口,弹出窗口后屏蔽掉其他组建

resizable:false, // 是否可以调整窗口大小,默认TRUE

plain:true,// 将窗口变为半透明状态。

items:[p,tabs],

buttons:[{

text:"登陆",

handler:function() {

Ext.Msg.alert("提示","登陆成功!");

}

}],

closeAction:'hide'//hide:单击关闭图标后隐藏,可以调用show()显示。如果是close,则会将window销毁。

});

 

Ext.get("window").on("click",function() {

window.show();

});

 

效果:


分享到:
评论

相关推荐

    多图表实现员工满意度调查数据分析python

    员工满意度是指员工对于工作环境、待遇、职业发展和组织管理等方面的满意程度。它是衡量员工对工作的整体感受和情绪状态的重要指标。

    2020届软件工程本科毕业生毕业设计项目.zip

    2020届软件工程本科毕业生毕业设计项目

    基于stm32平衡小车

    平衡小车 基于stm32 平衡小车 基于stm32 平衡小车 基于stm32

    c语言火车票订票管理源码.rar

    c语言火车票订票管理源码.rar

    施耐德PLC例程源码四台水泵的轮换

    施耐德PLC例程源码四台水泵的轮换提取方式是百度网盘分享地址

    node-v16.13.2-linux-s390x.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    digix算法创新大赛2019baseline.zip

    digix算法创新大赛2019baseline

    三菱PLC小型立体仓库项目.zip

    三菱PLC小型立体仓库项目.zip 叉手篮具到位检测 入库2电机前限

    node-v15.3.0-linux-s390x.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    软考高项-ITTO背诵打印必过版-2024-高项已通过

    软考高项_ITTO背诵打印必过版_2024_高项已通过

    巧解HTTP三次握手四次挥手流程(超详细).docx

    TCP三次握手及四次挥手详细图解 相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助. TCP三次握手 所谓三次握手(Three-way Handshake),是指建立一个TCP连接时,需要客户端和服务器总共发送3个包。 三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号并交换 TCP 窗口大小信息.在socket编程中,客户端执行connect()时。将触发三次握手。 1.TCP建立流程 第一次握手:建立连接时,客户端发送SYN(Seq = J)包到服务器,并进入到syn_sent状态。等待服务器确认。 第二次握手:服务器收到SYN包,知道了Client端想建立连接. 它会向客户端发送SYN+ ACK包(ack =J+1 TCP 四次挥手 TCP的连接的拆除需要发送四个包,因此称为四次挥手(four-way handshake)。客户端或服务器均可主动发起挥手动作,在socket编程中,任何一方执行close()操作即可产生挥手操作

    node-v13.5.0-linux-arm64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    欧母龙PLC例程源码扎钢机程序

    欧母龙PLC例程源码扎钢机程序提取方式是百度网盘分享地址

    基于RGB相机的驾驶员注视区域估计_刘觅涵.pdf

    驾驶员注意力检测,驾驶员分神驾驶检测,DMS,汽车智能驾驶,智能座舱

    Unity实现二维码扫描,二维码生成

    Unity实现二维码扫描,二维码生成 提供ZXing.unity.dll可以进行二维码的生成和扫描,扫描的方式是在场景中发射射线,射线获取rawimage的texture并读取,然后作为二维码进行解析。 提供源代码。

    中山大学-计科-操作系统实验.zip

    中山大学-计科-操作系统实验.zip

    施耐德PLC例程源码恒压供水程序(用施耐德TWIDOPLC编的)

    施耐德PLC例程源码恒压供水程序(用施耐德TWIDO PLC编的)提取方式是百度网盘分享地址

    node-v14.8.0-darwin-x64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    node-v14.6.0-darwin-x64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    python实现小说词频统计

    小说词频统计是指对一本小说中出现的各个词语进行计数和分析,以确定每个词语在整篇小说中的出现频率。 以下是对小说词频统计的一些基本说明: 数据收集:首先需要获取目标小说的文本数据。这可以通过手动输入、复制粘贴文本内容或使用自动化工具来提取文本。 文本处理:在进行词频统计之前,通常需要对文本数据进行预处理。这可能包括去除标点符号、停用词(如“的”、“是”等)和特殊字符,将文本转换为统一的格式。 词语计数:进行词频统计时,遍历整个文本,逐个词语地计数它们的出现次数。通常会使用字典、哈希表或其他数据结构来存储词语及其计数。

Global site tag (gtag.js) - Google Analytics