3
Bueno hace tiempo hice este cambio para el modal, el cual facilitaría la creaciones de modales con botones.Antes se tenia que usar así:
Código: ( Seleccionar Todo )
mydialog.buttons(true, true, 'SI', "bloquear('"+user+"', true, '"+lugar+"', true)", true, false, true, 'NO', 'close', true, true); Ahora es poco más largo, pero más fácil de entender
Código: ( Seleccionar Todo )
mydialog.buttons([
{mostrar:true,texto:'SI',accion:"bloquear('"+user+"', true, '"+lugar+"', true)",activo:true},
{mostrar:true,texto:'NO',accion:'cerrar',activo:true}
]) Tiene varias maneras de poder emplearlo, la primera es como se muestra en el código de arriba ↑ y las otras 2 son de estas formas:
Código: ( Seleccionar Todo )
mydialog.buttons({mostrar:true,texto:'SI',accion:"bloquear('"+user+"', true, '"+lugar+"', true)",activo:true})Código: ( Seleccionar Todo )
mydialog.buttons(false) // Puede ser trueVamos al archivo acciones.js, buscamos
Código: ( Seleccionar Todo )
buttons: function(display_all, btn1_display, btn1_val, btn1_action, btn1_enabled, btn1_focus, btn2_display, btn2_val, btn2_action, btn2_enabled, btn2_focus){
... TODO EL CODIGO INCLUIDO ...
},La reemplazamos por
Código: ( Seleccionar Todo )
buttons: function(object) {
let agregar_botones = '';
// Es un objeto...
if(typeof object === 'object') {
// Es un Arreglo (array)...
if(Array.isArray(object)) {
for(let i = 0; i < object.length; i++) {
if(object.mostrar) {
let clase = !empty(object.clase) ? object.clase : (!i ? 'btnOk' : 'btnCancel');
let activo = object.activo ? '' : ' disabled'
// Si la acción es igual a "cerrar"
let accion = (object.accion == 'cerrar') ? ` onclick="mydialog.close()"` : ` onclick="${object.accion}"`
agregar_botones += `<input type="button" class="mBtn ${clase}${activo}" style="display:inline-block" value="${object.texto}"${accion}${activo} >`;
}
}
} else {
if(object.mostrar) {
let clase = !empty(object.clase) ? object.clase : 'btnOk';
let activo = object.activo ? '' : ' disabled'
// Si la acción es igual a "cerrar" o contiene una función
let accion = (object.accion == 'cerrar') ? `onclick="mydialog.close()"` : ` onclick="${object.accion}"`
agregar_botones += `<input type="button" class="mBtn ${clase}${activo}" style="display:inline-block" value="${object.texto}"${accion}${activo}>`;
}
}
// Si el boolean es TRUE entonces mostrará este botón por defecto, si es FALSE no mostrará nada
} else if(typeof object === 'boolean') {
agregar_botones += object ? `<input type="button" class="mBtn btnOk" style="display:inline-block" value="Aceptar" onclick="mydialog.close()">` : ''
}
$('#mydialog #buttons').html(agregar_botones)
}, El objeto que se puede pasar, si solo contendrá un botón pude ir solo el objeto, en caso que sean 2 o más botones deberá ir así
Código: ( Seleccionar Todo )
[
{ ... PARAMETROS DEL OBJETO 1 ... },
{ ... PARAMETROS DEL OBJETO 2 ... }
]Los parámetros que se pueden usar
Código: ( Seleccionar Todo )
{
mostrar: boolean, // TRUE o FALSE
texto: string, // El texto que se mostrará
accion: string, // Función que se empleará o "cerrar"
activo: boolean, // TRUE o FALSE
clase: string // Opcional, puede incluir clase para modificar la apariencia del botón
} Espero que sea clara la explicación y lo puedan entender...


Facebook
Twitter
Reddit
Digg
del.icio.us
Tumblr
Pinterest
Blogger
Fark
LinkedIn
Mix
Google