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. liunx系统问题总结

    1.Unable to locate package错误      解决办法 :输入命令 sudo apt-get update,进行软件的更新

  2. InnoDB中锁的算法(3)

    Ⅰ.隐式锁vs显示锁 session1: (root@localhost) [test]> show variables like 'tx_isolation'; +-------------- ...

  3. 小程序自定义tabBar,动态控制tabBar

    最近做项目的时候,突然来了个小特殊的需求,根据客户的类型来动态显示底部的tabBar菜单.当时我就有点小懵逼了,这个不是小程序自带的组件么?还要做成动态?这就有点尴尬了..... 不过也只是一时尴尬而 ...

  4. 2.1 Html

    一.Head中常用标签 <head>元素出现在文档的开头部分,会书写一些和浏览器中的配置信息. <head>与</head>之间的内容不会在浏览器的文档窗口显示,但 ...

  5. 五、UI开发之核心基础——约束(深入)

    概述 本节我们将较为理论的讲述约束,更准确的说法叫做“AutoLayout”.对于后续章节要学习的内容,本篇文章并非必须,如果你也像我当年一样正在被老板踢屁股赶进度的话,但可掠过本篇. 本篇内容旨在锦 ...

  6. python进阶(四) windows下虚拟环境使用

    虚拟环境作用: 1. 通常开发一个项目,会安装很多的第三方包,这时第三方包我们是安装在本机环境的.那么如果项目进行部署或移植的时候是不是要重新安装这些包???? 2.开发环境,同时在做两相项目,同时要 ...

  7. ASP.NET页面之间传值的方式之Application(个人整理)

    Application  Application变量在整个应用程序生命周期中都是有效的,类似于使用全局变量一样,所以可以在不同页面中对它进行存取.它和Session变量的区别在于,前者是所有的用户共用 ...

  8. 关闭jtag保留swd

    串行线JTAG 配置 (Serial wire JTAG configuration)  位26:24  这些位只能由软件写( 读这些位,将返回未定义的数值) ,用于配置SWJ和跟踪复用功能的I/O ...

  9. 自定义Markdown例子

    主题1 正文字体 粗体 正文行内代码 斜体 int a = 2 /*代码块*/ /*杨韬的学习备忘录*/ private void CheckCloseFigure() { if (needClose ...

  10. C#简单打印出LIST集合

    循环打印集合,打印数组,随手写写,新手可以看看, 结果是不是有一些多余的0,把  int [][] ints =new int[3][];  改为new int[2][]; 运行出错,哈哈.  int ...