Foro

ocultar campo con un checkbox

0
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
1
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
0
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();
                        } 
                }
            }]
					
			});
0
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(); } }
0
Cevrhugov perdon por la demora en volver a escribir, pero le comento que su ayuda me funciono perfectamente, agradezco su colaboracion y la del señor Crysfel

¿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.