我建议不要前台全选,你做一个“全部 *** 作”,直接写一个请求,去后台把所有的id取过来就行了。
大批量 *** 作百万个id 也不是小数目,批量 *** 作建议后台执行。
换个方式,直接请求后台,去后台批量 *** 作。
ExtJS 分页数据表文章分类:Web前端ir - DESC 排序方式 ASC为升序limit -25 记录数sort-lastpost 排序字段start -0 开始记录 $data[] = array("threadid" => 26816 );$pack = array(
"totalCount" => count($data),
"topics" => $data
);echo json_encode($pack);/reader: new ExtdataJsonReader({
root: 'topics',
totalProperty: 'totalCount', // 数据总跳数,用于计算分多少页
id: 'threadid', // 数据需要有ID
fields: [ // 字段列表
'title', 'forumtitle', 'forumid', 'author',
{name: 'replycount', type: 'int'},
{name: 'lastpost', mapping: 'lastpost', type: 'date', dateFormat: 'timestamp'},
'lastposter', 'excerpt' // lastpost传过来的是timestamp格式
]
}),
// turn on remote sorting 在远程进行排序
remoteSort: true
});
storesetDefaultSort('lastpost', 'desc'); // 默认排序方式// pluggable renders 特殊的字段显示Render
function renderTopic(value, p, record){ // value为字段当前值, p , record为整个记录
return Stringformat( // String使用 {0},{1}作为占位幅
'<b><a href=">
extjs的数据表格,可以通过设置 selModel:{type: 'checkboxmodel'}来控制复选框的显示;也可以通过设置selType: 'checkboxmodel'来控制;
需要注意的是回显:
不懂你后台怎么写的,第一次请求也只要返回15条就可以了,不要返回全部数据。
extjs分页,比如你有40条数据,你要分页,每页15条。
后台做的时候,并不要返回40条,只要返回15条就够了。然后带一个总数40条。即可。
这样,extjs就知道,你有三页。
吧渲染器单独写
渲染器 也可以像普通函数一样调用的
var sextochar= function (v){if (v==0){
return "女";
}else{
return "男";
}
}
{ header: '性别', dataIndex: "sex", width:70, renderer:sextochar},
var charsex= sextochar(record[0]get(sex); //获取渲染后的值
例如当前这种情况:全部由1000条数据,默认grid分页显示20条。 而你当前想实现获取1000条记录 。
说明:sm不能选择全部的原因时分页后其实后台只返回了当前分页的记录数,当然不能获取到全部。
根据您当前的情况可以选择两种方法解决:
直接grid不进行分页或将单页数量调整到1000或更大,但是这样的话记录太多速度将会变慢,所以如果采用这种方法,建议表格变为缓冲表格BufferViewjs,将改善部分性能。
前端分页数量不修改,想获取全部记录时,直接使用ajax去后台获取全部记录。
是你自己做的太复杂了。。。写简单点就好了
//构建数据集ExtonReady(function() {
var store=Extcreate('ExtdataStore', {
//这里的字段名称是自定义的,不一定要和后台返回的一一对应,但是数量要相等,否则后面的将不会显示
fields: ['字段1','字段2','字段3'],
//自动加载数据
autoLoad: true,
proxy: {
type: 'ajax',
url: 'xxx',
reader: {
type: 'json',
//这里的root不是一定要设置的,如果返回的本身就是表格数据,就不需要
root: 'items'
}
}
});
//构建表格
Extcreate('ExtgridPanel', {
store:store,
renderTo: ExtgetBody(),
columns: [{
text: '列名',
dataIndex: '对应store的field,而不是json的字段',
},{
//同上
}]
});
});
以上就是关于extjs4.0 grid 对所有页进行全选全部的内容,包括:extjs4.0 grid 对所有页进行全选、extjs 怎样创建一个空表格,默认有10个空行,实现增加行和删除行急!、extjs6.0数据表格(带复选框)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)