最近工作,发现在Extjs中自定义Store的功能挺多,特意在此做笔记,几下来,具体代码如下:

1.定义Store

//定义Store

var ItemSelectorStore = new Ext.data.ArrayStore({
fields: [
{ name: 'BaseInfoId' },
{ name: 'Title' }
]
});

2.根据Grid的数据,循环往Store里面插

  var selectedData = InfoCollectionGrid.getSelectionModel().getSelection();
if (selectedData.length < 1) {
Ext.MessageBox.alert('提示', '请选择要批量移动的记录!'); return;
}
else {
ItemSelectorFormWin_Move.show();
ItemSelectorFormWin_Move.setTitle("批量移动");
ItemSelectorStore.removeAll();
ItemSelectorStore_MoveDele.removeAll(); for (var i = 0; i < selectedData.length; i++) {
ItemSelectorStore.insert(i, { InfoCollectionId: selectedData[i].data.InfoCollectionId, Title: selectedData[i].data.Title });//插入到最后一行
ItemSelectorStore_MoveDele.insert(i, { InfoCollectionId: selectedData[i].data.InfoCollectionId });//插入到最后一行
} document.getElementById('howMany_Move').innerText = "共选择了" + selectedData.length + "篇文章";
}

3.循环读取Store中某行某列的数据

    for (var i = ; i < ItemSelectorStore.getCount() ; i++) {
var record = ItemSelectorStore.getAt(i);
StrBaseInfoId += record.get("BaseInfoId") + ',';
}

上面这是获取的是列:BaseInfoId的数据。

4.移除grid中某行的数据(静态删除数据)

FunctionActionDelete_StyleFiles = function () {
if (gridJSFiles.getSelectionModel().getSelection()[] == null) {
Ext.MessageBox.alert('提示', '请选择要删除的记录吗!'); return;
}
var selectedData = gridJSFiles.getSelectionModel().getSelection()[].data; Ext.Msg.confirm("提示!", "确定要删除的记录吗?", function (btn) {
if (btn == "yes") {
var sm = gridJSFiles.getSelectionModel();
var store = gridJSFiles.getStore();
store.remove(sm.getSelection());
if (store.getCount() > ) {
sm.select();
}
}
else { return; }
});
}

5.移除grid中某行的数据(动态删除数据)

    FunctionActionDelete = function () {

        if (grid.getSelectionModel().getSelection()[0] == null) {
Ext.MessageBox.alert('提示', '请选择要删除的记录吗!'); return;
}
var selectedData = grid.getSelectionModel().getSelection()[0].data;
Ext.Msg.confirm("提示!", "确定要删除的记录吗?", function (btn) {
if (btn == "yes") {
Ext.MessageBox.show({
msg: '正在删除,请稍等...',
progressText: 'Saving...',
width: 300,
wait: true,
waitConfig: { interval: 200 }
});
setTimeout(function () { }, 1000);
Ext.Ajax.request({
url: '/UI/HttpHandlerData/JDQP/JDQP.ashx?operation=DeleCarPartsType',
method: "POST",
params: {
CSId: selectedData.CSId
},
success: function (response) {
Ext.MessageBox.alert('提示', '删除成功!');
store.load({ params: { start: start, limit: limit } });
Ext.MessageBox.hide();
},
failure: function (errorInfo) {
Ext.MessageBox.alert("提示", "删除失败!<br>" + errorInfo.responseText);
}
});
}
});
}

EXTJS 4.2 资料 控件之 Store 用法的更多相关文章

  1. EXTJS 3.0 资料 控件之 combo 用法

    EXTJS combo 控件: 1.先定义store //年款 var comboData_ReleasYear = [ ['], ['], ['], ['] ]; 2.定义combo控件 { lay ...

  2. EXTJS 3.0 资料 控件之 itemselector 用法

    var dsform = new Ext.data.ArrayStore({ data: [[123, 'One Hundred Twenty Three'], ['1', '今天星期一'], ['2 ...

  3. EXTJS 3.0 资料 控件之 html 潜入label用法

    这是在Extjs 中插入html 控件label! html: "<div><label id='howMany'>您共选中了</label><br ...

  4. EXTJS 4.2 资料 控件之combo 联动

    写两个数据源: 1.IM_ST_Module.js { success:true, data:[ { ModuleId: '1', ModuleName: '资讯' } , { ModuleId: ' ...

  5. EXTJS 4.2 资料 控件之Grid 那些事

    最近在学习Extjs4.2 ,积累文章,看得不错,再此留年: //表格数据最起码有列.数据.转换原始数据这3项 Ext.onReady(function(){ //定义列 var columns = ...

  6. EXTJS 4.2 资料 控件textfield中fieldLabel去掉冒号,控件label的长度

    代码: labelSeparator: '', // 去掉laebl中的冒号 labelWidth: 10,//控件label的长度

  7. EXTJS 4.2 资料 控件之Grid 行编辑绑定下拉框,并点一次触发一次事件

    主要代码: { header: '属性值', dataIndex: 'PropertyValueName', width: 130, editor: new Ext.form.field.ComboB ...

  8. EXTJS 4.2 资料 控件之Grid 添加行,编辑行,删除行

    //SiteVariableConfigValue类,创立一个模型类 Ext.define("SiteVariableConfigValue", { extend: "E ...

  9. EXTJS 4.2 资料 控件之Window窗体自动填充页面

    1.html页面代码: <div id="component" style="width:100%;height:100%"> <body&g ...

随机推荐

  1. Weblogic 10.3.6 在RHEL5.4 下安装

    一WebLogic简介 webserver是用来构建网站的必要软件.可用来解析.发布网页等功能,它是用纯java开发的.weblogic本来不是由bea发明的,是它从别人手中买过来,然后再加工扩展.B ...

  2. Unity Rigidbody 刚体中的Angular Drag和Freeze Position/Rotation

    Rigidbody中 Angular Drag  (角阻力):同样指的是空气阻力,只不过是用来阻碍物体旋转的.如果设置成无限的话,物体会立即停止旋转.如果设置成0,物体在上升过程中,会发生侧翻旋转. ...

  3. 设计模式——设计模式之禅day1

    单一职责 原则的定义是:应该有且仅有一个原因引起类的变更. 单一职责原则有什么好处: 类的复杂性降低,实现什么职责都有清晰明确的定义: 可读性提高,复杂性降低,那当然可读性提高了: 可维护性提高,可读 ...

  4. JDBC之初识

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  5. c#中设置像数量,价格,金额等的textbox的限制条件,用户只能输入数字或小数

    #region 设置数量等textbox控件样式及限制条件(具体调用的方法就是重写或直接调用ShieldNumberTextBoxOtherKeys函数) /// <summary> // ...

  6. 暑假集训(4)第二弹 -----递推(hdu2254)

    题意概括:上次小A在你的帮助下成功炼成贤者法阵的第一部分——三角分隔,现在他准备绘制法阵的第二部分——莫测矩形. 而他又遇到了一个问题,他不知道不同矩形到底有多少个. 秉持帮人帮到底,送佛送到西的基本 ...

  7. TIMAC 学习笔记(三)

    本文主要内容参考 <Security on TI IEEE 802.15.4 Compliant RF Devices>.<Design Note DN108>.<IEE ...

  8. URL学习笔记

    不多说,先上代码,代码的注释写的已经挺详细的了 //URL:统一资源定位符,一个URL的对象,对应着互联网上的一个资源. //我们可以通过URL的对象调用其相应的方法,将此资源读取(即所谓的“下载”) ...

  9. 《SELinux安全上下文的管理(含图)》RedHat6.3——步骤详细、条理清晰

    1.为什么浏览器只识别/var/www/html下的文件? 2.为什么不识别别的目录下的index.html文件呢? 3.这里牵扯到身份证,先安装软件包. 4.打开selinux 5.建立一个新的目录 ...

  10. 第六章 Qt布局管理器Layout

    第六章 Qt布局管理器Layout 大家有没有发现一个现象,我们放置一个组件,给组件最原始的定位是给出这个控件的坐标和宽高值,这样Qt就知道这个组件的位置.当用户改变窗口的大小,组件还静静地呆在原来的 ...