`

Gird编辑

 
阅读更多
1.grid可编辑条件
为了让 grid 可编辑,我们需要做四件事情。它们是:
•表格的定义由 Ex.grid.GridPanel 转化为 Ext.grid.EditorGridPanel;
• 为 grid 的配置添加 clicksToEdit——这个选项不是必须的,默认双击触发编辑;
• 为每列建立一个表单字段用来编辑;
• 通过 editor 配置把表单字段传递给 column model。
var title_edit = new Ext.form.TextField(); 
var director_edit = new Ext.form.TextField({vtype: 'name'}); 
  var tagline_edit = new Ext.form.TextField({ 
  maxLength: 45 
}); 
var grid = new Ext.grid.EditorGridPanel({ 
  renderTo: document.body, 
  frame:true, 
  title: 'Movie Database', 
  height:200, 
  width:520, 
  clickstoEdit: 1, 
  store: store, 
  columns: [ 
    {header: "Title", dataIndex: 'title',editor: title_edit}, 
    {header: "Director", dataIndex: 'director',editor: director_edit}, 
 
 
{header: "Released", dataIndex: 'released',renderer: 
Ext.util.Format.dateRenderer('m/d/Y')}, 
    {header: "Genre", dataIndex: 'genre',renderer: genre_name}, 
    {header: "Tagline", dataIndex: 'tagline',editor: tagline_edit} 
  ]  
});

2.grid字段的类型
• TextField
• NumberField
• ComboBox
• DateField
• TimeField
• CheckBox
a.日期
release_edit = new Ext.form.DateField({ 
    format: 'm/d/Y' 
});
{header: "Released", dataIndex: 'released', renderer: 
Ext.util.Format.dateRenderer('m/d/Y'), editor: release_edit} 

b.文本
var title_edit = new Ext.form.TextField();
{header: "Title", dataIndex: 'title',editor:title_edit}

c.下拉框
var genre_edit = new Ext.form.ComboBox({ 
  typeAhead: true, 
  triggerAction: 'all', 
  mode: 'local', //当地的
  store: genres, //集合
  displayField:'genre', 
  valueField: 'id' 
}); 
{header: "Genre", dataIndex: 'genre', renderer: genre_name, editor: genre_edit} 

3.改动列各种值
属性  说明
grid 编辑事件所发生的 grid。
record 正在编辑的记录;其他列的数据可以通过使用这个对象的“data”属性找到。
field 被编辑列的名字。
value 包含该单元格改动后的数据的字符串。
originalValue  包含该单元格原始数据的字符串。
row 被编辑的行的 index(序号)。
column 被编辑列的 index(序号)。

  listeners: {      
        afteredit: function(e){ 
            if (e.field == 'director' && e.value == 'Mel Gibson'){ 
                Ext.Msg.alert('Error','Mel Gibson movies not 
                          e.record.reject(); 
                 }else{    
                     e.record.commit();  
                 }      
       }   
 } 

4.对表格的操作
a.删除,并更新本地数据
grid.getStore().remove(sel);
b.新增
和定义的grid的名称和类型一致  
var ds_model = Ext.data.Record.create([ 
  'id', 
  'coverthumb', 
  'title', 
  'director', 
  {name: 'released', type: 'date', dateFormat: 'Y‐m‐d'}, 
  'genre', 
  'tagline', 
  {name: 'price', type: 'float'}, 
  {name: 'available', type: 'bool'} 
]);
插入第一行
{ 
  text: 'Add Movie', 
  icon: 'images/table_add.png', 
  cls: 'x‐btn‐text‐icon', 
  handler: function() { 
    grid.getStore().insert( //方法
        0, //开始的位置
       new ds_model({ 
        title:'New Movie', 
        director:'', 
        genre:0, 
        tagline:'' 
      })      );      
    grid.startEditing(0,0); //第一格可编辑
  }  
} 
插入最后一行
grid.getStore().getCount()//从最后一行开始
grid.startEditing(grid.getStore().getCount()‐1,0); 
 










分享到:
评论

相关推荐

    LigerUI之Grid使用详解(一)——显示数据

    LigerUI的Grid组件还有许多其他功能,如行操作、自定义模板、编辑模式等。你可以通过配置更多选项来扩展Grid的功能。例如,启用行编辑模式: ```javascript $("#gridContainer").ligerGrid({ columns: [...], ...

    Gird.zip mfc 写的GIRD 源码

    在本文中,我们将深入探讨由MFC(Microsoft Foundation Classes)编写的GIRD源码,以及在C++编程环境中如何利用这些源码实现基于对话框和Doc/View结构的应用。MFC是一个C++类库,它提供了对Windows API的封装,使得...

    GT-GIRD,一个很优秀的GIRD前台组件

    同时,它还支持数据的编辑,用户可以直接在表格内进行增删改操作,大大提升了工作效率。 3. **响应式设计**:随着移动设备的普及,响应式设计成为了必备要素。GT-GIRD具备良好的适应性,能够自动根据设备屏幕大小...

    VC-MS-GIRD.rar_CellDemo _MS GIRD_gird_表格 excel vc_表格 vc

    这表明开发者可能已经实现了如单元格编辑、公式计算、数据排序、筛选等功能,同时也可能支持基本的格式设置,如字体、颜色和对齐方式的调整。由于它被称为“简易”,我们可以推测这是一个简化版或者轻量级的表格工具...

    ligerui之gird

    除了以上提到的功能,LigerUI Grid还支持分页、排序、过滤、编辑、拖放列等功能,这些都为开发者提供了强大的数据管理能力。在实际开发中,我们需要结合具体需求,灵活运用LigerUI提供的API和配置选项,以实现更复杂...

    jquery 可动态增行,动态编辑,删除的grid

    在给出的标签中,"jquer gird"可能是指jQuery Grid。注意正确拼写为"jQuery Grid",以便于搜索和获取相关资源。 综上所述,jQuery Grid是实现动态数据管理的强大工具,其动态增行、编辑和删除功能极大地提升了Web...

    Gird事件机制初级读本

    《Gird事件机制初级读本》是一篇关于Gird事件机制的初级教程,主要介绍了在新版YUI-EXT 32中的更新和改进。这篇文章旨在帮助开发者理解和利用Grid中的事件监听,以提升交互体验和应用功能。 在YUI-EXT的新版本中,...

    nui或者miniui中gird合并重复行数据,查找某行

    Datagrid是NUI和MiniUI等前端UI库中非常重要的一个组件,它主要用于展示表格形式的数据,并提供了一系列高级功能,如排序、分页、编辑等。Datagrid使得开发者能够方便地处理大量结构化的数据,并为用户提供友好的...

    ExtGridDemo

    7. **编辑(Editing)**:如果你的Grid需要支持数据编辑,可以集成Ext.grid.plugin.CellEditing或RowEditing插件。它们提供单元格级别的编辑,用户双击单元格后可以直接修改值。 8. **事件监听(Event Handling)**...

    ext grid 导出excel 代码实例

    EXT Grid是一个强大的JavaScript组件,提供了丰富的功能,包括数据展示、排序、筛选和编辑等。导出到Excel功能则进一步增强了其实用性,让用户能够将网格中的数据转化为Excel表格,便于进一步的数据操作和分析。 在...

    gird-gallery:用CodeSandbox创建

    【标题】"gird-gallery:用CodeSandbox创建" 是一个关于使用CodeSandbox开发网格画廊项目的主题。CodeSandbox是一款在线的、基于浏览器的集成开发环境(IDE),特别适合于前端开发者进行快速的React、Vue、Angular等...

    VB-ctgrid2汉化版

    CTgrid2控件本身是一款功能强大的表格控件,它提供了丰富的特性,如数据绑定、排序、过滤、分页、编辑、行列拖放等。汉化版则在此基础上进行了语言本地化,使中国开发者能够更直观地理解和使用各项功能,降低了学习...

    jq-extgrid v1.2 表格插件

    extgrid 是一款jquery上的gird插件 界面风格采用了类似easyui extjs 界面风格样式 可通过css修改自己想要的样式 extgrid具有列大小 位置改变 排序 分组 分页 工具栏 扩展行 rowNumber 多选列 编辑列 行列锁 ajax...

    Bootstrap Gird System-crx插件

    - **实时编辑**:Bootstrap Grid System插件让用户能够在浏览器中直接编辑网格,无需离开当前页面,即时看到修改效果。 - **拖放功能**:通过拖放操作,用户可以轻松调整元素的位置和大小,简化了布局设计过程。 ...

    silverlight datagrid动态绑定dictionary 列表

    考虑到交互性,我们可能还需要处理DataGrid的选中项改变、编辑等事件,以便进一步操作或更新Dictionary。 总结,Silverlight中的DataGrid动态绑定Dictionary列表涉及到动态列创建、数据绑定、转换器的使用以及事件...

    ext超酷的grid中放图片(ext3.2.1)

    - Grid组件是EXT JS中的一个核心组件,用于显示表格数据,可以进行排序、分页和编辑。 - 它由Store(数据存储)和ColumnModel(列模型)组成,Store负责管理数据,ColumnModel定义列的属性和布局。 2. **在Grid中...

    Extjs Gird 支持中文拼音排序实现代码

    `snapshot`属性通常用在编辑记录时保存数据的一个快照,以便在需要时可以恢复到记录被编辑前的状态。 值得注意的是,在实际的项目开发中,可能需要根据不同的浏览器环境进行兼容性处理。虽然在本文中提到`...

    jqGrid与Struts2的结合应用

    jqGrid是一款功能强大的JavaScript库,专门用于创建交互式的表格,支持数据的检索、排序、过滤、编辑等功能。而Struts2则是一个流行的Java Web框架,它简化了MVC(Model-View-Controller)架构的实现,提供了丰富的...

    功能非常齐全的Grid Control

    3. 编辑功能:提供了内置的编辑功能,如单元格内编辑,支持文本、选择列表等不同类型的输入方式,用户可以直接在网格中修改数据。 4. 排序和过滤:用户可以方便地对数据进行排序和筛选,快速定位和分析所需信息。 ...

    JsGrid官网离线版/离线文档

    JsGrid是一款轻量级的JavaScript数据网格插件,它提供了丰富的功能,用于在Web应用中展示和编辑数据。这个离线版文档包含了所有关于JsGrid的重要信息,使得开发者无需互联网连接也能查阅相关资料。 **1. JsGrid基本...

Global site tag (gtag.js) - Google Analytics