jQuery EasyUI 数据网格 - 启用行内编辑

  可编辑的功能是最近添加到数据网格(datagrid)的。它可以使用户添加一个新行到数据网格(datagrid)。用户也可以更新一个或多个行。

  本教程向您展示如何创建一个数据网格(datagrid)和内联编辑器。

  创建数据网格(DataGrid)

  $(function(){

  $('#tt').datagrid({

  title:'Editable DataGrid',

  iconCls:'icon-edit',

  width:660,

  height:250,

  singleSelect:true,

  idField:'itemid',

  url:'datagrid_data.json',

  columns:[[

  {field:'itemid',title:'Item ID',width:60},

  {field:'productid',title:'Product',width:100,

  formatter:function(value){

  for(var i=0; i<products.length; p="" i++){<="">

  if (products[i].productid == value) return products[i].name;

  }

  return value;

  },

  editor:{

  type:'combobox',

  options:{

  valueField:'productid',

  textField:'name',

  data:products,

  required:true

  }

  }

  },

  {field:'listprice',title:'List Price',width:80,align:'right',editor:{type:'numberbox',options:{precision:1}}},

  {field:'unitcost',title:'Unit Cost',width:80,align:'right',editor:'numberbox'},

  {field:'attr1',title:'Attribute',width:150,editor:'text'},

  {field:'status',title:'Status',width:50,align:'center',

  editor:{

  type:'checkbox',

  options:{

  on: 'P',

  off: ''

  }

  }

  },

  {field:'action',title:'Action',width:70,align:'center',

  formatter:function(value,row,index){

  if (row.editing){

  var s = 'Save ';

  var c = 'Cancel';

  return s+c;

  } else {

  var e = 'Edit ';

  var d = 'Delete';

  return e+d;

  }

  }

  }

  ]],

  onBeforeEdit:function(index,row){

  row.editing = true;

  updateActions(index);

  },

  onAfterEdit:function(index,row){

  row.editing = false;

  updateActions(index);

  },

  onCancelEdit:function(index,row){

  row.editing = false;

  updateActions(index);

  }

  });

  });

  function updateActions(index){

  $('#tt').datagrid('updateRow',{

  index: index,

  row:{}

  });

  }

  为了启用数据网格行内编辑,您应该添加一个 editor 属性到列中。编辑器(editor)会告诉数据网格(datagrid)如何编辑字段及如何保存字段值。正如您所看到的,我们定义的三个编辑器(editor):text、combobox 和 checkbox。

  function getRowIndex(target){

  var tr = $(target).closest('tr.datagrid-row');

  return parseInt(tr.attr('datagrid-row-index'));

  }

  function editrow(target){

  $('#tt').datagrid('beginEdit', getRowIndex(target));

  }

  function deleterow(target){

  $.messager.confirm('Confirm','Are you sure?',function(r){

  if (r){

  $('#tt').datagrid('deleteRow', getRowIndex(target));

  }

  });

  }

  function saverow(target){

  $('#tt').datagrid('endEdit', getRowIndex(target));

  }

  function cancelrow(target){

  $('#tt').datagrid('cancelEdit', getRowIndex(target));

  }

  下载 jQuery EasyUI 实例

  jeasyui-datagrid-datagrid12.zip

  本文转载自:w3cschool(编辑:雷林鹏 来源:网络 侵删)

雷林鹏分享:jQuery EasyUI 数据网格 - 启用行内编辑的更多相关文章

  1. jQuery EasyUI 数据网格 - 启用行内编辑(转自http://www.runoob.com/jeasyui/jeasyui-datagrid-datagrid12.html)

    可编辑的功能是最近添加到数据网格(datagrid)的.它可以使用户添加一个新行到数据网格(datagrid).用户也可以更新一个或多个行.本教程向您展示如何创建一个数据网格(datagrid)和内联 ...

  2. 雷林鹏分享:jQuery EasyUI 数据网格 - 扩展行显示细节

    数据网格(datagrid)可以改变它的视图(view)来显示不同的效果.使用详细视图,数据网格(datagrid)可以在数据行的左边显示展开按钮("+" 或者 "-&q ...

  3. 雷林鹏分享:jQuery EasyUI 数据网格 - 设置冻结列

    jQuery EasyUI 数据网格 - 设置冻结列 本实例演示如何冻结一些列,当用户在网格上移动水平滚动条时,冻结列不能滚动到视图的外部. 为了冻结列,您需要定义 frozenColumns 属性. ...

  4. 雷林鹏分享:jQuery EasyUI 数据网格 - 创建复杂工具栏

    jQuery EasyUI 数据网格 - 创建复杂工具栏 数据网格(datagrid)的工具栏(toolbar)可以包含按钮及其他组件. 您可以通个一个已存在的 DIV 标签来简单地定义工具栏布局,该 ...

  5. 雷林鹏分享:jQuery EasyUI 数据网格 - 动态改变列

    jQuery EasyUI 数据网格 - 动态改变列 数据网格(DataGrid)列可以使用 'columns' 属性简单地定义.如果您想动态地改变列,那根本没有问题.为了改变列,您可以重新调用dat ...

  6. 雷林鹏分享:jQuery EasyUI 数据网格 - 格式化列

    jQuery EasyUI 数据网格 - 格式化列 以下实例格式化在 easyui DataGrid 里的列数据,并使用自定义列的 formatter,如果价格小于 20 就将文本变为红色. 为了格式 ...

  7. 雷林鹏分享:jQuery EasyUI 数据网格 - 设置排序

    jQuery EasyUI 数据网格 - 设置排序 本实例演示如何通过点击列表头来排序数据网格(DataGrid). 数据网格(DataGrid)的所有列可以通过点击列表头来排序.您可以定义哪列可以排 ...

  8. 雷林鹏分享:jQuery EasyUI 数据网格 - 创建列组合

    jQuery EasyUI 数据网格 - 创建列组合 easyui 的数据网格(DataGrid)可以创建列组合,如下所示: 在本实例中,我们使用平面数据来填充数据网格(DataGrid)的数据,并把 ...

  9. 雷林鹏分享:jQuery EasyUI 数据网格 - 自定义排序

    jQuery EasyUI 数据网格 - 自定义排序 如果默认的排序行为不满足您的需求,您可以自定义数据网格(datagrid)的排序行为. 最基础的,用户可以在列上定义一个排序函数,函数名是 sor ...

随机推荐

  1. Cordova打包Apk

    ======================== apk打包 ======================== keytool -genkey -v -keystore release-key.key ...

  2. centos6 安装python2.7 并做软件兼容处理 及 MySQLdb模块安装

    相关软件准备 https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz https://pypi.org/project/setuptool ...

  3. Open_stack 有虚拟机端口不通的问题

    原因:流量表 解决办法:not修改流量表(容易出错,出错后果更严重):is迁移虚拟机这样会对应生成新的流量表,然后问题就解决了.

  4. Yii2 mongoDb的配置及使用

    yii2 的配置都是在启动时加载的,所以mongo的配置也同样在component里面配置. 具体实现(无用户和密码): [ 'mongo1' => [ 'class' => '\yii\ ...

  5. dubbo注册到zookeeper

    zk注册中心安装,参见dubbo官网:http://dubbo.apache.org/books/dubbo-admin-book/install/zookeeper.html provider.xm ...

  6. VCS

    timing check相关的, +notimingcheck命令,可以用在compile时,也可以用在run time的时候, 都是将检查timing的系统函数,都disable掉了, 加在comp ...

  7. SpringDataJpa开发环境的搭建以及使用

    一.所需工具 安装jdk.IntelliJ IDEA和mysql数据库. 二.SpringDataJpa快速起步 开发环境的搭建: ①.在IDEA软件上添加依赖包:在http://mvnreposit ...

  8. PHP函数------parse_ini_file()

    1.parse_ini_file()函数用于解析一个配置文件,并以数组的形式返回其中的设置. 举例说明:group.ini文件,文件内容如下: 0 = "Hleducation" ...

  9. MySQL删除命令_DELETE

    单表删除语句: DELETE [LOW_PRIORITY][IGNORE] FROM tbl_name     [WHERE where_definition]     [ORDER BY ...] ...

  10. P3195 [HNOI2008]玩具装箱TOY(斜率优化dp)

    P3195 [HNOI2008]玩具装箱TOY 设前缀和为$s[i]$ 那么显然可以得出方程 $f[i]=f[j]+(s[i]-s[j]+i-j-L-1)^{2}$ 换下顺序 $f[i]=f[j]+( ...