stworthy 发表于 2013-1-23 02:06:42

jquery-easyui中表格的行编辑功能

datagrid现在具有行编辑能力了,使用时只须在columns中为需要编辑的列添加一个editor属性,编辑保存时同时具有数据校验能力。
看一个例子效果图:
http://jquery-easyui.wikidot.com/local--files/tutorial:datagrid12/datagrid.png
代码如下:
$('#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; i++){                  if (products.productid == value) return products.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 = '<a href="#" >Save</a> ';                  var c = '<a href="#" >Cancel</a>';                  return s+c;                } else {                  var e = '<a href="#" >Edit</a> ';                  var d = '<a href="#" >Delete</a>';                  return e+d;                }            }      }    ]],    onBeforeEdit:function(index,row){      row.editing = true;      $('#tt').datagrid('refreshRow', index);    },    onAfterEdit:function(index,row){      row.editing = false;      $('#tt').datagrid('refreshRow', index);    },    onCancelEdit:function(index,row){      row.editing = false;      $('#tt').datagrid('refreshRow', index);    }}); 
原文及下载地址:http://jquery-easyui.wikidot.com/tutorial:datagrid12
 
页: [1]
查看完整版本: jquery-easyui中表格的行编辑功能