Principales respuestas
Agregar un Drowdroplist a una grilla Jqgrid y editar sobre cada fila

Pregunta
-
Buenas Tardes:
Debido a un RQ de un cliente he visto como buena opción el uso de JqGrid, pero no encuentro la forma de agregar a una columna un Drowdroplist, este es mi Js
$(function () {
var countrysource =
{
datatype: "json",
datafields: [
{ name: 'idcuenta', type: 'string' },
{ name: 'nomcuenta', type: 'string' }
],
url: '/Operativo/CmbCuentas'
};
$("#grid").jqGrid({
url: "/Operativo/GetIngreso",
datatype: 'json',
mtype: 'Get',
colNames: ['IdIngDoc','IdTidoc', 'Cuenta','Concepto', 'Tercero', 'C.Costo', 'Debito', 'Credito'],
colModel: [
{ key: true, hidden: true, name: 'IdIngDoc', index: 'IdIngDoc', editable: true },
{ key: false,hidden: true, name: 'IdTidoc', index: 'IdTidoc', editable: true },
{ key: false, name: 'Codigocuenta', index: 'Codigocuenta', editable: true },
{ key: false, name: 'Concepto', index: 'Concepto', editable: true },
{ key: false, name: 'Id_Tercero', index: 'Id_Tercero', editable: true },
{ key: false, name: 'Cod_CC', index: 'Cod_CC', editable: true },
{ key: false, name: 'Debito', index: 'Debito', editable: true },
{ key: false, name: 'Credito', index: 'Credito', editable: true }],
pager: jQuery('#pager'),
rowNum: 10,
rowList: [10, 20, 30, 40],
height: 'auto',
viewrecords: true,
caption: 'Detalle Documento',
emptyrecords: 'No Existen registros para Mostrar',
jsonReader: {
root: "rows",
page: "page",
total: "total",
records: "records",
repeatitems: false,
Id: "0"
},
autowidth: true,
multiselect: false
}).navGrid('#pager', { edit: true, add: true, del: true, search: false, refresh: true },
{
// edit options
zIndex: 100,
url: '/Operativo/Edit',
closeOnEscape: true,
closeAfterEdit: true,
recreateForm: true,
afterComplete: function (response) {
if (response.responseText) {
alert(response.responseText);
}
}
},
{
// add options
zIndex: 100,
url: "/Operativo/Create",
closeOnEscape: true,
closeAfterAdd: true,
recreateForm:true,
msg: "Confirma que Desea Guardar",
afterComplete: function (response) {
if (response.responseText) {
alert(response.responseText);
}
}
},
{
// delete options
zIndex: 100,
url: "/Operativo/Delete",
closeOnEscape: true,
closeAfterDelete: true,
recreateForm: true,
msg: "Confirma que Desea Eliminar el Registro?",
afterComplete: function (response) {
if (response.responseText) {
alert(response.responseText);
}
}
});
});EN la primera parte estoy inovcando desde el controlador mi jsonResult que me va a retornar los datos, pero no escuentro la forma de colocar el control sobre la grilla, adicional neecsito agregar datos y editar sobre la misma grilla.
Quedo atento a sus comentarios
mil gracias
Carlos Alberto Hernández R. CEO -Xtreme Business Solutions Movil: 3102334026 Bogota- Colombia
Respuestas
-
Buenas Tardes Lenadro:
Mil gracias por tu respuesta, efectivamente ya logre hacerlo en ese form, pero ahora el problema es el llenado yo tengo en el controlador un JsonResult la idea es invocarlo desde mi js y ahi llenar el select
intente con esto, pero al pasarle al value cuentas no me llena no se que este haciendo mal.
var cuentas =
{
url: '/Operativo/CmbCuentas',
datatype: "json",
datafields: [
{ name: 'idcuenta', type: 'string' },
{ name: 'nomcuenta', type: 'string' }
],};y en el Jqgrid por el momento lo estoy pasando fijo los valores solo por probar{ key: false, name: 'Codigocuenta', index: 'Codigocuenta', editable: true, edittype: 'select', editoptions: { value: { '0': 'Seleccione Cuenta', '1': 'ACTIVO', '2': 'PASIVO', '5': 'GASTOS', '11': 'DISPONIBLE', '22': 'PROVEEDORES', '23': 'CUENTAS POR PAGAR', '51': 'OPERACIONALES DE ADMINISTRACION', '1105': 'CAJA', '2205': 'NACIONALES', '2365': 'RETENCION EN LA FUENTE', '5135': 'SERVICIOS', '110505': 'CAJA GENERAL', '110510': 'CAJAS MENORES', '220505': 'NACIONALES', '236525': 'SERVICIOS', '513515': 'ASISTENCIA TECNICA', '23652505': 'SERCIVICIOS 6%' } } }, pero lo que necesito es pasalre en el value lo que me retorne mi funcion.
Carlos Alberto Hernández R. CEO -Xtreme Business Solutions Movil: 3102334026 Bogota- Colombia
- Marcado como respuesta Carlos Alberto Hernandez R miércoles, 8 de marzo de 2017 0:55
Todas las respuestas
-
hola
hasta donde conozco no recomiendo que vayas por ese camino, si necesitas un combo para editar una entidad de la row define un form popup para realizarlo
en el form si podras usar el combo
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina -
Buenas Tardes Lenadro:
Mil gracias por tu respuesta, efectivamente ya logre hacerlo en ese form, pero ahora el problema es el llenado yo tengo en el controlador un JsonResult la idea es invocarlo desde mi js y ahi llenar el select
intente con esto, pero al pasarle al value cuentas no me llena no se que este haciendo mal.
var cuentas =
{
url: '/Operativo/CmbCuentas',
datatype: "json",
datafields: [
{ name: 'idcuenta', type: 'string' },
{ name: 'nomcuenta', type: 'string' }
],};y en el Jqgrid por el momento lo estoy pasando fijo los valores solo por probar{ key: false, name: 'Codigocuenta', index: 'Codigocuenta', editable: true, edittype: 'select', editoptions: { value: { '0': 'Seleccione Cuenta', '1': 'ACTIVO', '2': 'PASIVO', '5': 'GASTOS', '11': 'DISPONIBLE', '22': 'PROVEEDORES', '23': 'CUENTAS POR PAGAR', '51': 'OPERACIONALES DE ADMINISTRACION', '1105': 'CAJA', '2205': 'NACIONALES', '2365': 'RETENCION EN LA FUENTE', '5135': 'SERVICIOS', '110505': 'CAJA GENERAL', '110510': 'CAJAS MENORES', '220505': 'NACIONALES', '236525': 'SERVICIOS', '513515': 'ASISTENCIA TECNICA', '23652505': 'SERCIVICIOS 6%' } } }, pero lo que necesito es pasalre en el value lo que me retorne mi funcion.
Carlos Alberto Hernández R. CEO -Xtreme Business Solutions Movil: 3102334026 Bogota- Colombia
- Marcado como respuesta Carlos Alberto Hernandez R miércoles, 8 de marzo de 2017 0:55
-
hola
>>pero lo que necesito es pasalre en el value lo que me retorne mi funcion.
pero entonces pasale lo que retorne el action, no veo cual es el problema, solo debers retornar un Json con ese formato
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Editado Leandro TuttiniMVP martes, 7 de marzo de 2017 2:56