查看api可知:

// 启动一个简单的时钟任务,每秒执行一次更新一个

div var task = {

  run: function(){
Ext.fly('clock').update(new Date().format('g:i:s A'));
},
interval: 1000 //1秒

}

Ext.TaskManager.start(task);

 1,Extjs如何隔一段时间操作一次

可以看出task是一个 var,通过设置interval隔一段时间操作一次

2,实现的功能效果图:

view层代码:

 Ext.define('ExtApp.view.StudentMonitor' , {
extend : 'Ext.grid.Panel' ,
id : 'StudentMonitorGrid' ,
xtype : 'StudentMonitor' ,
store : 'StudentMonitor' ,
draggable:false, //设置为false则禁用拖拽改变列顺序、
columnLines:true,//添加列的框线样式
viewConfig: {
stripeRows:true //True来实现隔行换颜色
},
tbar : [{
xtype : 'form',
width : '100%',
id : 'FormMonitor',
items : [{
xtype : 'container',
padding : 5,
flex : 2,
layout : {
type : 'hbox'
},
items : [{
xtype : 'button',
id : 'btnOnMonitor',
text : '打开学生监控'
},{
xtype : 'button',
id : 'btnOffMonitor',
text : '关闭学生监控'
},{
padding:5,
xtype:'container',
flex:1,
anchor:'100%',
layout:{
type:'hbox',
pack:'end'
},
items:[{
xtype:'button',
id:'btnEmptyMonitor',
text:'全部清空'
}]
}]
}]
}],
columns : [
//{xtype:'rownumberer',text:'序号',flex:1, align:'center'},
{text:'账户ID' , flex:1 , align:'center' , dataIndex:'userCode'},
{text:'用户姓名' , flex:1 , align:'center' , dataIndex:'userName'},
{text:'年级' , flex:1 , align:'center' , dataIndex:'gradeName'},
{text:'时间' , flex:2 , align:'center' , dataIndex:'time' },
{header: "测试记录", align:"center",flex:2,
renderer:function(value){
return '<font size="3" color="red">该同学已经5分钟没有操作屏幕</font>';
}
},
{xtype: 'actioncolumn' , //这里是放按钮的地方
header: '操作' ,
width: 50 ,
flex : 1 ,
align:'center',
items: [{
icon : 'images/user_delete.png' , //删除图标
tooltip : '删除账户' ,
handler : function(grid, rowIndex, colIndex){
console.log(rowIndex);
var store = grid.getStore();
console.log(store.getAt(rowIndex));
store.removeAt(rowIndex);
grid.updateLayout();
}
}]
}],
dockedItems:[{
xtype: 'pagingtoolbar',
store : 'StudentMonitor' , // GridPanel中使用的数据
dock: 'bottom',
displayInfo: true
}] });

controller层代码:

 onMonitor:function(btn,event){
var grid=Ext.getCmp('StudentMonitorGrid');
var store=this.getStore('StudentMonitor');
var pageBar = grid.down('pagingtoolbar');
pageBar.moveFirst();
task={
run:function(){
Ext.Ajax.request({
url: 'getMessages.action',
callback:function(options,success,response){
console.log(response);
console.log(response.responseText);
console.log(Ext.decode(response.responseText));
console.log(Ext.decode(response.responseText).rows);
var data = Ext.decode(response.responseText).rows;
for(var i in data){
console.log(data[i]);
store.add({
userCode:data[i].userCode,
userName:data[i].userName,
time:data[i].time,
gradeName:data[i].gradeName
})
}
}
})
},
interval:1000
};
Ext.TaskManager.start(task);
} ,
32  var task;

3,如何删除store为本地grid的一行?

通过grid带的函数handler可以找到rowIndex,通过Store.removeAt(rowIndex);

Store操作返回后台时候:


通过Ext.Ajax.request执行即可

4,Extjs中decode使用


通过把response打印出来,可以看出我们需要的是responseText,由于返回的是一个Jason格式字符串
我们需要使用decode,可以看api:decodeString json, Boolean safe ) : Object,,传入是一个Jason,出来是个object
通过打印 console.log(Ext.decode(response.responseText)); 我们发现,返回了"rows"和"results",我们取得rows,返回的是是一个数组,通过 for(var i in data)取到数组里面的值

为啥不decode就不行?

只有返回的是Object才可以通过 .取值

例如:

5,extjs怎样在gird中添加一行?
store.add()
参考资料:http://blog.csdn.net/itlwc/article/details/7868626

var record = store.getAt(index);

store.add(

  new MyRecord({

name : 'lwc',

age : 18

})

);

Extjs定时操作的更多相关文章

  1. C# 创建Windows服务。服务功能:定时操作数据库 (转)

    C# 创建Windows服务.服务功能:定时操作数据库 一.创建window服务 1.新建项目-->选择Windows服务.默认生成文件包括Program.cs,Service1.cs 2.在S ...

  2. extjs gridpanel 操作行 得到选中行

    extjs gridpanel 操作行 得到选中行的列 在Extjs 3.2.0上适合 var model = grid.getSelectionModel(); model.selectAll(); ...

  3. ExtJS定时和JS定时

    ExtJS定时 //定时刷新待办事宜状态 var task={ run:function(){ //执行的方法或方法体 }, interval:5*60*1000 //5分钟 } //定时启动 Ext ...

  4. Extjs DOM操作的几个类

    Extjs提供了非常完善的DOM操作方法,可以方便的操作DOM.另外Extjs还可以方便的查询DOM元素,并把这些DOM元素封装成Ext.Element对象,通过Element对象我们可以操作DOM元 ...

  5. 执行Sqlserver中waitfor delay延时操作或waitfor time定时操作

    private static string connectionString = RBAC.Dal.DataRootBase.ConnectionString; private SqlConnecti ...

  6. Spring 定时操作业务需求

    1.定时分析 在业务需求中有的需要检测用户的状态,通过对用户状态的检测做出对此状态相应的操作,如果这种检测由运营人工检测,不仅工作量大,而且准确性不高,人工无法很好的完成工作: 问题根源:在检测用户状 ...

  7. shell脚本定时操作数据库

    一.数据库脚本(mysql.sh) Linux环境下,定时将数据库A的表格复制到数据库B中 #!/bin/bash mysql_host="127.0.0.1" mysql_use ...

  8. 关于linux定时操作cron的理解

    cron是服务名称,crond是后台进程(有的后台也叫作cron,本人是ubuntu12.04,32bit),crontab则是定制好的计划任务表. 软件包安装: 要使用cron服务,先要安装vixi ...

  9. djang-异步——定时操作

    django本身是一个同步框架,flask也是,所以要把它变成异步操作的话还得专门设置一下 我的这个系统呢是windows系统,python3.7的 所以有的库是不可以兼容的 ,然后到时候会稍微修改一 ...

随机推荐

  1. SQL Server 运行计划操作符具体解释(1)——断言(Assert)

    前言: 非常多非常多地方对于语句的优化,一般比較靠谱的回复即使--把运行计划发出来看看.当然那些仅仅看语句就说怎样怎样改代码,我一直都是拒绝的,由于这样的算是纯蒙.依据本人经验,大量的性能问题单纯从语 ...

  2. update-java-alternatives 更改默认Java环境

    Ubuntu/debian 更改默认Java环境 我的电脑里安装了两个版本的Java,一个是java-6-sun,还有一个是java-gcjgcj是在JVM非常缓慢的时候诞生的,他可以把Java代码编 ...

  3. bzoj 4337 树的同构

    4337: BJOI2015 树的同构 Description 树是一种很常见的数据结构. 我们把N个点,N-1条边的连通无向图称为树. 若将某个点作为根,从根开始遍历,则其它的点都有一个前驱,这个树 ...

  4. POJ1265 Area 多边形内格点数 Pick公式

    POJ1265给定一个多边形 计算边上的格点 内部的格点 以及多边形的面积 利用Pick公式  面积=内部格点数+边上格点数/2-1 将多边形分割为三角形容易证得上述公式 计算面积用叉积,计算边上格点 ...

  5. nginx开发(二)配置mp4文件在线播放

    1: 第一步先开打nginx的文件夹遍历功能 vi /usr/local/nginx/conf/nginx.conf #编辑配置文件,在http {下面添加以下内容: autoindex on; #开 ...

  6. 33. Extjs中的tree节点的操作

      转自:https://blog.csdn.net/masterShaw/article/details/51354351?utm_source=blogkpcl9 ext 树节点操作   tree ...

  7. 规范化创建一个vs2017 Mvc框架项目

    vs2107 + dapper + MiniUi 标准化分层封装使 3.1 规范化创建一个vs2017 Mvc框架项目 此时创建的项目勾选 添加单元测试. 添加一个类库,主要用于实体类操作,类库名称 ...

  8. vs2012 jsoncpp 链接错误

    解决: 项目->属性->C/C++->代码生成->运行库->设置与使用的.lib的版本一致.

  9. 后台管理进程GameMaster

    初步准备在后台加一个进程,用来控制进程中的各种数据,修改,查看,删除玩家数据类似于后端的gm控制平台

  10. 第3章 DOM

    1.节点,dom有3种节点,元素节点,文本节点,属性节点 2.元素节点是dom的原子,所有的属性节点和文本节点都被元素包含,但并不是所有的元素都包含他们 3.继承,节点树上的元素将继承父元素的样式和属 ...