Ext 怎样取出grid中所有记录并保存到数据库呢???

 我来答
匿名用户
2013-07-31
展开全部
function goAllDatas(){
//grid是Ext.gird.GridPanel对象
var store = grid.getStore();
var count = store.getCount();
for (var i = 0; i < count; i++) {
var record = store.getAt(i);
//接下来就是取record里面的字段了
//比如取name字段
var name = record.data.name;
//....
//接下来就是保存操作.....
}
}
742ucib874
2011-08-25 · TA获得超过177个赞
知道答主
回答量:527
采纳率:0%
帮助的人:292万
展开全部
两种方法:
1, 在后台取到数据后直接加一行空数据再送到前台, 这样的话客户端不需要做任何处理

2, 在前台store.load事件中增加空行
store.on('load', function(){
var _rec = new this.recordType();
var _key = '';

//枚举所有字段, 设置默认值
for (var i = 0; i < _rec.fields.keys.length; i++){
_key = _rec.fields.keys[i];

//record对象中每个字段初次写入的值会记录在record.modified, 用于记录被修改之前的值
_rec.data[_key] = null;

//第二次根据字段类型写入默认值, record.data中记录的是默认值, record.modified中记录的是null,
//如此可以在客户端提交时区分客户端新增的记录或修改的记录
switch(_rec.fields.get(_key).type){
case 'int':
_rec.set(_key, 0);
break;
case 'float':
_rec.set(_key, 0.0);
break;
case 'boolean':
_rec.set(_key, false);
break;
default:
_rec.set(_key, '');
break;
}
}

//新增记录设置两次值, 则会在每个字段左上角显示红色三角修改标志, 用来凸显新增记录
//如果不需要判断是否客户端新增记录, 去掉第一次设置空值, 直接设置默认值即可
this.add(_rec);
});
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-07-31
展开全部
var store = grid.getStore();
var selFuns = [];
store.each(function(rec){
selFuns.push(Ext.util.JSON.encode(rec.data));
});这样遍历数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式