EXT弹出不同对话框

1.ExtJs之消息框:
  语法:Ext.MessageBox.alert(String title, String msg,Function fn, Obejct scope);    参数定义: 
  
  • title: 标题
  • msg: 提示内容
  • fn: 提示框关闭之后自动调用的回调函数
  • scope: 作用域,用于指定this指向哪里
[javascript]  view plain copy
  1. Ext.MessageBox.alert("提示框""这是一个提示框");  
  2. Ext.MessageBox.alert("提示框""这是一个提示框",function(){    
  3.      alert("提示框关闭"   
  4. });  

2. ExtJs 之输入框  
   语法:Ext.MessageBox.prompt(String title, String msg,Function fn,Object scope,Boolean/Number multiline,String defaulttext);  
  参数定义:
  • title: 标题
  • msg: 提示内容
  • fn: 提示框关闭之后自动调用的回调函数
  • scope: 作用域,用于指定this指向哪里
  • Boolean/Number:如果为true或为数字,则表示允许输入多行或者指定默认高度
  • defaulttext :输入框默认文本内容
[javascript]  view plain copy
  1. Ext.MessageBox.prompt("输入框","请输入名字:",function(bu,txt){    
  2.      Ext.MessageBox.alert("Result","你点击的是"+bu+"按钮,<br> 输入的内容为:"+txt);    
  3. },this,300); 

3.ExtJs之确认框  
语法: 
  Ext.MessageBox.confirm(String title, String msg,Function fn, Object scope);  
  参数定义: 
  
  • title: 标题
  • msg: 提示内容
  • fn: 提示框关闭之后自动调用的回调函数
  • scope: 作用域,用于指定this指向哪里
[javascript]  view plain copy
  1. Ext.MessageBox.confirm("确认""请点击下面的按钮作出选择",function(btn{    
  2.         Ext.MessageBox.alert("你单击的按钮是:"+btn);    
  3. }); 

4. ExtJs之自定义消息框 
  语法: 
    Ext.MessageBox.show(Object config);
  config属性说明: 

  • title : 消息框标题栏
  • msg:消息内容
  • width:消息框的宽度
  • multiline: 是否显示多行文本
  • closable:是否显示关闭按钮
  • buttons:按钮
  • icon:图标
  • fn:回调函数
[javascript]  view plain copy
  1. var config ={    
  2.     title:"自定义对话框"   
  3.     msg:"这是一个自定义对话框"   
  4.     width:400,    
  5.     multiline:true   
  6.     closable:false   
  7.     buttons:Ext.MessageBox.YESNOCANCEL,    
  8.     icon:Ext.MessageBox.QUESTION,    
  9.     fn:  function(btn,txt){    
  10.    Ext.MessageBox.alert("Result","你点击了'yes'按钮<br>,输入的值是:"+txt);    
  11.     
  12.  };    
  13. Ext.MessageBox.show(config); 


注意: 在ExtJs.MessageBox中已经定义了buttons的取值.如下 

引用

OK:只有"确定"按钮 
CANCEL:只有"取消"按钮 
OKCANCEL:有"确定"和"取消"按钮 
YESNO: 有"是"和"否"按钮 
YESNOCANCEL:有"是"、"否"和"取消"按钮 

icons取值如下 
引用

   INFO:信息图标 
   WARNING:警告图标 
   QUESTION:询问图标 
   ERROR:错误图标


5.ExtJs之进度条对话框 

    进度条对话框也是自定义消息框的一种,只是在配置Config时添progress=true即可,同时在设置其他相关信息,比如进度提示。 

[javascript]  view plain copy
  1. Ext.MessageBox.show({    
  2.        title:'请等待片刻'   
  3.        msg:'正在加载项目....'   
  4.        progressText:'正在初始化...'   
  5.        Width:300,    
  6.        progress:true   
  7.        closable:false    
  8.    });    
  9.   var function(v){    
  10.       return function(){    
  11.         if(v == 12){    
  12.             Ext.MessageBox.hide();    
  13.             Ext.MessageBox.alert('完成','所有项目加载完成!');    
  14.          }else   
  15.              var v/11;    
  16.             Ext.MessageBox.updateProgress(i,Math.round(100*i)+'%以完成');    
  17.              
  18.       };    
  19.  };    
  20.   for(var i=0; i<13;i++){    
  21.     setTimeout(f(i),i*500);    
  22.   

解 析上述代码中ProgressText属性是进度条滚动之前最初的文本,滚动进程由updateProgress(Number value,String progressText)方法来定义,参数value是从0-1之间的小数,表示进度百分比;progressText则表示进度条滚动过程中的文本提 示信息。


6.ExtJs之消息框动画效果 

[javascript]  view plain copy
  1. var config    
  2.        title:"飞出的消息框"   
  3.        msg:"这是一个自定义对话框,是飞出来的哦"   
  4.        width:400,    
  5.        multiline:true   
  6.        closable:false   
  7.        buttons:Ext.MessageBox.YESNOCANCEL,    
  8.        icon:Ext.MessageBox.QUESTION,    
  9.        animEl:"fly"    
  10.      };    
  11.      Ext.MessageBox.show(config); 
PS:弹框的宽度都是固定的,很多时候都会影响美观,相信很多人都会想着如何改变弹框的宽度。

Ext源码
1、progress : function(title, msg, progressText){
                   this.show({
                         title : title,
                         msg : msg,
                         buttons: false,
                         progress:true,
                         closable:false,
                         minWidth: this.minProgressWidth,
                         progressText: progressText
                   });
                   return this;
             },
     wait : function(msg, title, config){
                   this.show({
                         title : title,
                         msg : msg,
                         buttons: false,
                         closable:false,
                         wait:true,
                         modal:true,
                         minWidth: this.minProgressWidth,
                         waitConfig: config
                   });
                   return this;
             },
修改宽度的代码为:Ext.MessageBox.minProgressWidth = 400;
例:
              Ext.MessageBox.minPromptWidth = 400;
              Ext.MessageBox.prompt("补充需求信息", "需求分析", analysisreq, this, 250, vanalysisReq);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值