ocultar campo con un checkbox
Hola a todos
tengo la siguiente duda:
En un formulario tengo 2 Checkbox el A y B ( pueden ser tambien radio button) y tengo 2 textfield el C y D. Deseo que cuando active el checkbox A me desactive o me oculte el textfield B y me permita escribir unicamente en el textfield A y que cuando active el checkbox B me desactive o oculte el textfield A. Por el momento estoy trabajando con la version 3.3 asi que agradecería la ayuda sobre esta version pero de no ser asi tambien sera bienvenida.
Cualquier sugerencia sera bien recibida
Revisa el evento "change" del checkbox, ahi deberías saber si el checkbox ha sido seleccionado o deseleccionado. Una vez que sabes eso puedes usar el método "hide/show" del texfield que quieres mostrar/cultar.
Saludos
Hola Crysfel
ya puedo capturar el evento cuando se activa o desactiva la casilla del checbox. Pero me gustaria saber como puedo desabilitar la edicion de un textfield al realizar el click sobre el checbox, se que esta la propiedad del disabled, pero no se como vincularla al evento, me gustaria si es posible me colaborara con este asunto. Por el momento dejo el codigo del form en el cual he avanzado.
var form = new Ext.FormPanel({ bodyStyle:'padding:5px 5px 0', width: 600, items: [{ xtype:'fieldset', id:'fiel2', name:'fiel2', checkboxToggle:true, title: 'User Information', autoHeight:true, defaults: {width: 210}, defaultType: 'textfield', items: [{ fieldLabel: 'First Name', id:'fname', name: 'first', allowBlank:false },{ fieldLabel: 'Last Name', id:'ape', name: 'last' },{ fieldLabel: 'Company', name: 'company' }, { fieldLabel: 'Email', name: 'email', vtype:'email' }], onCheckClick : function() { var activeInactive = this.checkbox.dom.checked ? '1' : '0'; if (activeInactive == 1) { Ext.Element.get('fname').hide(); } else { Ext.Element.get('fname').show(); } } }] });
Tendrias que utilizar algo asi:
onCheckClick : function() {
var activeInactive = this.checkbox.dom.checked ? '1' : '0';
if (activeInactive == 1) {
Ext.getCmp('fname').disable();
} else {
Ext.getCmp('fname').enable();
}
}
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.