• ExtJs定时消息提示框,类似于QQ右下角提示,ExtJs如何定时向后台发出两个请求并刷新数据实例


    原文出自:https://blog.csdn.net/seesun2012

    思路:
    1.加载页面,加载Ext.TaskManager.start()方法;
    2.执行定时器方法;
    3.获取地址向后台发送请求,参数传递到后台;
    4.执行你想要的功能。

    /**
     *  定时器结构
     */
    var task = {
    	run : function() {
    		//请求...
    	},
    	interval : 1000,  //1秒
    };
    Ext.TaskManager.start(task);
    

    一言不合就Copy:

    /**
     *
     * 时间:2016-10-17
     * 
     * 作者:张擎宇
     */
    Ext.define('Ext.xxx.xxx.xxx.xxx', {
    	extend : 'Ext.xxx.xxx.xxx.xxx',
    	//初始化
    	init : function() {
    		var self = this;
    		self.control({
    			//页面加载时这行render中的方法
    			render : function(panel) {
    				var num = 1;		
    				var dataOne = 0;	
    				var dataTwo = 0;	
    
    				var task = {
    					run : function() {
    						if (num >= 1 && num <= 100 ) {
    							
    							//请求一
    							Ext.Ajax.request({
    								url : 'xxxxxx/xxxxxx',	//后台请求地址
    								params : {
    									name : 'xxx',	//传递的请求参数
    								},
    								success : function(record)
    								{
    									dataOne = Ext.JSON.decode(record.responseText);	//获取的请求结果
    								}
    							});
    							
    							//请求二
    							Ext.Ajax.request({
    								url : 'xxxxxx/xxxxxx',
    								params : {
    									id : 0001,
    									name : 'seesun2012',
    									age : '120',
    								},
    								success : function(record)
    								{
    									dataTwo = Ext.JSON.decode(record.responseText);
    									var reusable = Ext.getCmp('windows_Id');
    									if (!reusable && (dataOne > 0 || dataTwo > 0)) {
    										//创建一个窗体
    										reusable = Ext.create('Ext.window.Window', {
    											title : '窗体',
    											heiht : 400,
    											width : 300,
    											id : 'windows_Id',		
    											closeAction : 'hide',
    											position : 'br',
    											useXAxis : false,
    											html : '<div style="300px;height:150px;margin-top:10px;">请求成功,xxxxx!</div><hr /><hr/><span style="with:100%;float:right;margin-right:10px;"><a id="dont_msg" href="#" style="color:blue;text-decoration:none;a:hover:red;">不再提醒</a></span>',
    										});
    										reusable.show();
    									}
    									//不再弹出提示
    									$('#dont_msg').on('click',function(){
    										num = 100;
    										reusable.destroy();		//销毁这个窗体
    									});
    									num++;	//如果成功,累加当前请求次数
    								}
    							});
    						}
    					},
    					interval : 10000,	//定时10秒钟向后台发一次请求
    					
    				};
    				Ext.TaskManager.start(task);
    
    			}
    
    		});
    	},
    });
    

    当然要根据实际情况更改一些相应的代码啦~~~!

  • 相关阅读:
    (转)Java 调用 C++ (Java 调用 dll)
    用Gvim建立IDE编程环境 (Windows篇)
    (转)python调取C/C++的dll生成方法
    C/C++协程的实现方式总结
    时钟周期,机器周期,指令周期,总线周期
    (转)MongoDB和Redis区别
    linux cpu占用100%排查
    (转)linux 打开文件数 too many open files 解决方法
    Python下载网页图片
    python抓网页数据【ref:http://www.1point3acres.com/bbs/thread-83337-1-1.html】
  • 原文地址:https://www.cnblogs.com/seesun2012/p/9214762.html
Copyright © 2020-2023  润新知