jQuery EasyUI Extensión -Cuadrícula de datos editable (Editable DataGrid)
jQuery EasyUI Extensión
Uso
Crear una cuadrícula de datos (datagrid) en una etiqueta html
<table id="tt" style="width:600px;height:200px"
title="Editable DataGrid"
singleSelect="true">
<thead>
<tr>
<th field="itemid" width="100" editor="{type:'validatebox',options:{required:true}}">Item ID</th>
<th field="productid" width="100" editor="text">Product ID</th>
<th field="listprice" width="100" align="right" editor="{type:'numberbox',options:{precision:1}}">List Price</th>
<th field="unitcost" width="100" align="right" editor="numberbox">Unit Cost</th>
<th field="attr1" width="150" editor="text">Attribute</th>
</tr>
</thead>
</table>
Hacer que la cuadrícula de datos (datagrid) sea editable
$('#tt').edatagrid({
url: 'datagrid_data.json',
saveUrl: ...,
updateUrl: ...,
destroyUrl: ...
});
Ahora puede hacer doble clic en una fila de la cuadrícula de datos para comenzar la operación de edición. También puede configurar las propiedades saveUrl, updateUrl, destroyUrl para sincronizar automáticamente los datos entre el cliente y el servidor.
Propiedades
Estas propiedades extienden la cuadrícula de datos (datagrid). A continuación se muestran las propiedades añadidas para la cuadrícula de datos editable (edatagrid).
| Nombre | Tipo | Descripción | Valor predeterminado |
|---|---|---|---|
| destroyMsg | object | El mensaje del cuadro de diálogo de confirmación que se muestra al destruir una fila. |
destroyMsg:{
norecord:{ // when no record is selected
title:'Warning',
msg:'No record is selected.'
},
confirm:{ // when select a row
title:'Confirm',
msg:'Are you sure you want to delete?'
}
}
|
| autoSave | boolean | Si se establece en true, guarda automáticamente la fila editada al hacer clic fuera de la cuadrícula de datos. | false |
| url | string | Una URL para recuperar datos del servidor. | null |
| saveUrl | string | Una URL para guardar datos en el servidor y devolver la fila añadida. | null |
| updateUrl | string | Una URL para actualizar datos en el servidor y devolver la fila actualizada. | null |
| destroyUrl | string | Una URL para enviar el parámetro 'id' al servidor para destruir la fila. | null |
| tree | selector | Muestra el selector de árbol del componente de árbol correspondiente. | null |
| treeUrl | string | Una URL para recuperar los datos del árbol. | null |
| treeDndUrl | string | Una URL para manejar las operaciones de arrastrar y soltar. | null |
| treeTextField | string | Define el nombre del campo de texto del árbol. | name |
| treeParentField | string | Define el nombre del campo del nodo padre del árbol. | parentId |
Eventos
Estos eventos extienden la cuadrícula de datos (datagrid). A continuación se muestran los eventos añadidos para la cuadrícula de datos editable (edatagrid).
| Nombre | Parámetros | Descripción |
|---|---|---|
| onAdd | index,row | Se activa cuando se añade una nueva fila. |
| onEdit | index,row | Se activa cuando se edita una fila. |
| onBeforeSave | index | Se activa antes de que una fila sea guardada. Devolver false cancela la acción de guardado. |
| onSave | index,row | Se activa cuando se guarda una fila. |
| onDestroy | index,row | Se activa cuando se destruye una fila. |
| onError | index,row | Se activa cuando ocurre un error del servidor. El servidor debe devolver una fila con la propiedad 'isError' establecida en true para indicar que se produjo un error. Ejemplo de código: //server side code echo json_encode(array( 'isError' => true, 'msg' => 'error message.' ));
//client side code
$('#dg').edatagrid({
onError: function(index,row){
alert(row.msg);
}
});
|
Métodos
Estos métodos extienden la cuadrícula de datos (datagrid). A continuación se muestran los métodos añadidos o reescritos para la cuadrícula de datos editable (edatagrid).
| Nombre | Parámetros | Descripción |
|---|---|---|
| options | none | Devuelve el objeto de opciones (options). |
| enableEditing | none | Habilita la edición de la cuadrícula de datos (datagrid). |
| disableEditing | none | Deshabilita la edición de la cuadrícula de datos (datagrid). |
| editRow | index | Edita la fila especificada. |
| addRow | index | Añade una nueva fila en el índice de fila especificado. Si no se especifica el parámetro index, añade una nueva fila al final. Ejemplo de código:
// append an empty row
$('#dg').edatagrid('addRow');
// append an empty row as first row
$('#dg').edatagrid('addRow',0);
// insert a row with default values
$('#dg').edatagrid('addRow',{
index: 2,
row:{
name:'name1',
addr:'addr1'
}
});
|
| saveRow | none | Guarda la fila editada y la publica en el servidor. |
| cancelRow | none | Cancela la edición de la fila. |
| destroyRow | index | Destruye la fila actualmente seleccionada. Si no se especifica el parámetro index, destruye todas las filas seleccionadas. Ejemplo de código:
// destroy all the selected rows
$('#dg').edatagrid('destroyRow');
// destroy the first row
$('#dg').edatagrid('destroyRow', 0);
// destroy the specified rows
$('#dg').edatagrid('destroyRow', [3,4,5]);
|
Descargar ejemplos de jQuery EasyUI
jquery-easyui-edatagrid.zip
jQuery EasyUI Extensión Otras extensiones