Blog

ExtJS and Sencha Touch Themes and Templates

Formularios y campos comunes en Ext JS

Jun 01, 2009 | Español | By | 53 Comments | Read in English

Entre los múltiples tipos de paneles que nos ofrece Ext JS, tenemos el componente Ext.FormPanel, un componente que nos proporciona toda la funcionalidad de un formulario común en HTML pero con métodos y funcionalidades propias de ExtJS.

Formularios y campos comunes en Ext JS
Author: José Armando

Es Ingeniero en Computación egresado de la Universidad Tecnológica de la Mixteca. Se dedica a desarrollar aplicaciones web con tecnologías como Extjs, Cappuccino en el front-end y Php o Java en el back-end.

El componente Ext.FormPanel tiene un tipo de diseño (“layout”) por defecto tipo “form”, este tipo de diseño alinea de una manera inteligente cada uno de los componentes (etiqueta-componente) del formulario. La característica única de los Ext.FormPanel es que ya tiene implementado el guardado y cargado de datos de una manera segura y totalmente configurable.

Material de apoyo

Ahora descargamos el material de apoyo, descomprimimos su contenido, creamos una carpeta que se llame “formularios” dentro de la carpeta “curso” en la cual hemos estado trabajando, luego copiamos los archivos que descomprimimos anteriormente.

Recuerden que este código lo vamos a ocupar durante todo el tema de “Formularios” así que en los tutoriales siguientes agregaremos líneas a este código para añadirle funcionalidad a nuestro formulario además de que estamos utilizando la versión 3.0 del Framework de Ext JS.

El objetivo es que al final del tema “Formularios”, tengamos un formulario funcionando correctamente con todas las funcionalidades y validaciones correspondientes.

Empaquetando el tutorial

Vamos a empaquetar el código para evitar conflictos con otras variables.

Ext.ns('com.quizzpot.tutorial');

Ext.BLANK_IMAGE_URL = '../ext-3.0/resources/images/default/s.gif';

com.quizzpot.tutorial.FormTutorial = {
	init: function(){
		//Aquí va el código del tutorial
	}	

}

Ext.onReady(com.quizzpot.tutorial.FormTutorial.init,com.quizzpot.tutorial.FormTutorial);

Formulario

A continuación vamos a construir un formulario con los campos más utilizados; dos campos de texto, un grupo de checkbox, un campo oculto, un grupo de radiobuttons y dos botones.

Primero necesitamos crear un formulario donde se alojarán los campos para que el usuario capture la información necesaria, esto lo hacemos de la siguiente manera:

//creamos un formulario
this.form= new Ext.FormPanel({
	title:'New Developer',
	renderTo: 'frame',
	defaults:{xtype:'textfield'},	//componente por defecto del formulario
	bodyStyle:'padding: 10px', //alejamos los componentes del formulario de los bordes
	html: 'This form is empty!' //<-- en el siguiente paso vamos a quitar esta propiedad
});

Los formularios heredan las propiedades y métodos del componente "Ext.Panel" por lo tanto la configuración que hemos realizado ya es conocida por nosotros, si no es así te invito a darle un repaso al tema de los paneles.

El código anterior genera la siguiente pantalla:

Imagen del formulario vacio

Un formulario vacio

Hasta este punto no hay diferencia visual entre un formulario y un panel, esto es porque aún no le hemos agregado ningún campo, vamos a ver detalladamente los componentes más comunes a continuación.

Campos de texto

Como hemos visto, en temas anteriores, podemos crear los componentes utilizando la palabra reservada "new" seguido del componente que necesitamos instanciar, o bien podemos crearlos mediante objetos de configuración utilizando la propiedad "xtype" para distinguir entre los componentes disponibles. El componente que nos permite crear cajas de texto es el "Ext.form.TextField" y su "xtype" es "textfield", por ejemplo:

//creamos una instancia del textfield
var name = new Ext.form.TextField({
	fieldLabel:'Name',
	name:'txt-name',
	emptyText:'Your name...',
	id:"id-name"
}); 

//creamos un formulario
this.form= new Ext.FormPanel({
	title:'New Developer',
	renderTo: 'frame',
	defaults:{xtype:'textfield'},	//componente por defecto del formulario
	bodyStyle:'padding: 10px', //alejamos los componentes del formulario de los bordes
	items:[
		name, // le asignamos la instancia que creamos anteriormente
		{
			fieldLabel:'Email', // creamos un campo
			name:'txt-email', // a partir de una
			value:'default@quizzpot.com', //configuración
			id:"id-email"
		}
	]
});

En el código anterior se han creado dos campos de texto de dos maneras distintas, una utilizando una instancia del componente TextField y la otra usando un objeto de configuración, cada desarrollador puede elegir la opción que más le convenga dependiendo las circunstancias.

Imagen de campos de texto

Campos de texto

A continuación voy a mencionar las propiedades que utilizamos:

"fieldLabel": esta propiedad define el texto que acompaña a cada componente del formulario.

"emptyText": esta propiedad define el texto que contendrá el campo cuando se encuentra vacío.

"name": es el nombre con el cual se envían los datos que contiene el campo al servidor, es exactamente igual al "name" que estamos acostumbrados a usar en formularios comunes.

"value": es el valor por defecto con que aparece en el componente, útil para cuando queremos editar un registro y mostrar la información que actualmente está capturada.

Checkbox

Los checkboxes son utilizados para seleccionar uno o varios items de una lista, o simplemente para activar o desactivar alguna bandera o permiso en un sistema, para este ejemplo voy a poner un campo que se llame “activo” utilizando un objeto de configuración, también podemos crear una instancia utilizando el componente “Ext.form.Checkbox”:

// codigo removido por cuestiones de simplicidad...

//creamos un formulario
this.form= new Ext.FormPanel({
	title:'New Developer',
	renderTo: 'frame',
	defaults:{xtype:'textfield'},
	bodyStyle:'padding: 10px',
	items:[
		name,
		{
			fieldLabel:'Email',
			name:'txt-email',
			value:'default@quizzpot.com',
			id:"id-email"
		},{
			xtype: 'checkbox', //definimos el tipo de componente
			fieldLabel: 'Active',// le asignamos un label
			name: 'chk-active', //y un "name" para que lo recojamos en el servidor...
			id: 'id-active'// ...cuando el formulario sea enviado
		}
	]
});

Por otro lado cuando queremos agrupar varios checkboxes necesitamos utilizar el componente “Ext.form.CheckboxGroup” el cual permite manipular de una forma sencilla cualquier cantidad de checkboxes.

//creamos un grupo de checkboxes
var checkboxes = new Ext.form.CheckboxGroup({
	fieldLabel:'Interests',
	columns:2,//mostrar dos columnas de checkboxes
	items:[
		{boxLabel: 'JavaScript', name: 'cb-js', checked: true}, //campo marcado desde el principio
		{boxLabel: 'HTML', name: 'cb-html'},
		{boxLabel: 'CSS', name: 'cb-css'},
		{boxLabel: 'Otros', name: 'cb-otros'}
	]
});

//creamos un formulario
this.form= new Ext.FormPanel({
	title:'New Developer',
	renderTo: 'frame',
	defaults:{xtype:'textfield'},
	bodyStyle:'padding: 10px',
	items:[
		name,
		{
			fieldLabel:'Email',
			name:'txt-email',
			value:'default@quizzpot.com',
			id:"id-email"
		},{
			xtype: 'checkbox', //definimos el tipo de componente
			fieldLabel: 'Active',// le asignamos un label
			name: 'chk-active',//y un "name" para que lo recojamos en el servidor...
			id: 'id-active'// ...cuando el formulario sea enviado
		},
		checkboxes //<-- grupo de checkboxes
	]
});

Imagen de checkboxes

Checkboxes con Ext JS

Los grupos de checkboxes aceptan la propiedad “items” la cual debe contener un arreglo de objetos de configuración para checkbox o instancias del checkbox.

Radiobuttons

Los radiobutton son usados para seleccionar una sola opción de varios items, este componente se crea muy semejante a los checkboxes, solo que usamos el componente “Ext.form.RadioGroup” para agrupar varios radios.

//código removido por cuestiones de simplicidad

//creamos un grupo de opciones con radiobuttons
var radios = new Ext.form.RadioGroup({
	fieldLabel: 'Favorite Framework',
     columns: 2, //muestra los radiobuttons en dos columnas
     items: [
          {boxLabel: 'Ext Js', name: 'framework', inputValue: 'Ext js', checked: true},
          {boxLabel: 'Dojo', name: 'framework', inputValue: 'Dojo'},
          {boxLabel: 'Mootools', name: 'framework', inputValue: 'Mootools'},
          {boxLabel: 'jQuery', name: 'framework', inputValue: 'jQUery'},
          {boxLabel: 'prototype', name: 'framework', inputValue: 'prototype'},
          {boxLabel: 'YIU', name: 'framework', inputValue: 'yui'}
     ]
}); 

//creamos un formulario
this.form= new Ext.FormPanel({
	title:'New Developer',
	renderTo: 'frame',
	defaults:{xtype:'textfield'},
	bodyStyle:'padding: 10px',
	items:[
		name,
		{
			fieldLabel:'Email',
			name:'txt-email',
			value:'default@quizzpot.com',
			id:"id-email"
		},{
			xtype: 'checkbox',
			fieldLabel: 'Active',
			name: 'chk-active',
			id: 'id-active'
		},
		checkboxes,
		radios // <-- grupo de radios
	]
});

Imagen de radiobuttons

Grupo de Radiobuttons

Normalmente los radios son usados en conjunto, pero si por alguna extraña razón necesitas solamente uno o en lugar de usar objetos de configuración en la propiedad “items” del RadioGroup quieres poner instancias, puedes utilizar el componente “Ext.form.Radio”.

Campos ocultos

Los campos ocultos nos sirven para enviar información al servidor que el usuario no le interesa saber, por ejemplo algún “id” del registro que se esta editando, o algún token de seguridad, etc. Ext JS cuenta con el componente “Ext.form.Hidden” el cual nos permite lograr esta funcionalidad.

//código removido por cuestiones de simplicidad

//creamos un formulario
this.form= new Ext.FormPanel({
	title:'New Developer',
	renderTo: 'frame',
	defaults:{xtype:'textfield'},
	bodyStyle:'padding: 10px',
	items:[
		name,
		{
			fieldLabel:'Email',
			name:'txt-email',
			value:'default@quizzpot.com',
			id:"id-email"
		},{
			xtype: 'checkbox',
			fieldLabel: 'Active',
			name: 'chk-active',
			id: 'id-active'
		},
		checkboxes,
		radios,
		{
		    	xtype:'hidden',//<-- campo oculto (hidden)
		    	name:'h-type', //el nombre con que se envia al servidor
		    	value:'developer'//el valor que contendrá
		}
	]
});

Es de suma importancia definir la propiedad “name” así como la propiedad “value” para asignarle el contenido a la variable que será enviada al servidor, adicionalmente podemos asignarle un “id” para que podamos modificar el valor del campo de una manera sencilla más adelante.

Botones en el formulario

Podemos asignarle botones al formulario para que al ser presionados realicen las acciones correspondientes, por ahora únicamente voy a crear los botones sin ninguna acción.

//creamos un formulario
this.form= new Ext.FormPanel({
	title:'New Developer',
	renderTo: 'frame',
	defaults:{xtype:'textfield'},
	bodyStyle:'padding: 10px',
	items:[
		name,
		{
			fieldLabel:'Email',
			name:'txt-email',
			value:'default@quizzpot.com',
			id:"id-email"
		},{
			xtype: 'checkbox',
			fieldLabel: 'Active',
			name: 'chk-active',
			id: 'id-active'
		},
		checkboxes,
		radios,
		{
		    	xtype:'hidden',
		    	name:'h-type',
		    	value:'developer'
		}
	],
	buttons:[{text:'Save'},{text:'Cancel'}] //<-- botones del formulario
});

Imagen de botones

Botones en un formulario

Podemos alinear la posición de los botones a la derecha, izquierda o al centro, por defecto están alineados al centro, pero mediante la propiedad “buttonAlign” podemos definir el lugar donde aparecerán los botones, para alinearlos a la derecha haríamos los siguiente:

//creamos un formulario
this.form= new Ext.FormPanel({
	title:'New Developer',
	renderTo: 'frame',
	defaults:{xtype:'textfield'},
	bodyStyle:'padding: 10px',
	items:[
		name,
		{
			fieldLabel:'Email',
			name:'txt-email',
			value:'default@quizzpot.com',
			id:"id-email"
		},{
			xtype: 'checkbox',
			fieldLabel: 'Active',
			name: 'chk-active',
			id: 'id-active'
		},
		checkboxes,
		radios,
		{
		    	xtype:'hidden',
		    	name:'h-type',
		    	value:'developer'
		}
	],
	buttonAlign: 'right', //<--botones alineados a la derecha
	buttons:[{text:'Save'},{text:'Cancel'}] //botones del formulario
});

Imagen botones alineados

Botones alineados a la derecha

Ventana que alojara el formulario

Solo por cuestiones visuales, vamos a ocupar una ventana para alojar nuestro formulario ahí, así que es necesario quitar la propiedad “renderTo: 'frame'” e insertar el formulario dentro de la ventana que crearemos, también vamos a mover los botones a la ventana, el título y el estilo del body de la siguiente manera:

//creamos un formulario
this.form= new Ext.FormPanel({
	border:false, // <-- Le quitamos el borde al formulario
	defaults:{xtype:'textfield'},	//componente por default del formulario
	items:[
		name, // le asignamos la instancia que creamos anteriormente
		{
			fieldLabel:'Email', // creamos un campo
			name:'txt-email', // a partir de una
			value:'default@quizzpot.com', //configuración
			id:"id-email"
		},{
			xtype: 'checkbox', //definimos el tipo de componente
			fieldLabel: 'Active',// le asignamos un label
			name: 'chk-active',//y un "name" para que lo recojamos en el servidor...
			id: 'id-active'// ...cuando el formulario sea enviado
		},
		checkboxes, //grupo de checkboxes
		radios, // grupo de radios
		{
		    	xtype:'hidden',//campo oculto (hidden)
		    	name:'h-type', //el nombre con que se envia al servidor
		    	value:'developer'//el valor que contendrá
		}
	]
}); 

//creamos la ventana que contendrá el formulario
var win = new Ext.Window({
	title: 'New Developer',
	width:300,
	height:300,
	bodyStyle:'background-color:#fff;padding: 10px',
	items:this.form, //le asignamos el formulario solamente
	buttonAlign: 'right', //botones alineados a la derecha
	buttons:[{text:'Save'},{text:'Cancel'}] //botones del formulario
}); 

win.show();

Imagen ventana con un formulario

Ventana con un formulario

Conclusiones

El día de hoy hemos visto como crear un formulario de manera muy fácil y sencilla, el código completo lo puedes descargar en la parte superior derecha de esta página, en el próximo tutorial veremos cómo añadirle un combo box con datos cargados de manera local y remota a nuestro formulario, y también le agregaremos algunos campos más que nos proporciona Ext JS.

No olviden dejar sus dudas, comentarios o sugerencias aquí o pueden registrarse en el foro para tener una mejor conversación.

53 Responses to “Formularios y campos comunes en Ext JS”

  • Crysfel Jun 01, 2009

    Este tutorial fué realizado con la ayuda de Jose Armando (@manduks), agradecemos tu apoyo :D

    • enel Apr 14, 2011

      hola esta bueno el tutorial de formulario de este framework, pero explicar como guardo los datos que tipeen en formulario en una base de datos usando este framework le agradeceria respusta

  • manduks Jun 01, 2009

    bueno, bueno quedo muy bien, jeje aunque mi propuesta inicial era mas corta :( , me alegra ver que la estructuraste mejor y le agregaste algunos detalles, bueno yo soy el usuario Manduks en el foro, mas corto … saludos a todos y espero que les guste (y)

  • DrMartin Jun 05, 2009

    Vaya!! que me alegra tanto ver el apoyo a ExtJS ya que he buscado como enfermo por todos lados y aun no encontraba nada de documentación decente en español, hasta que doy con este sitio!..
    Magnifico!!! GRACIAS TOTALES!!

  • Roberto Jun 12, 2009

    Muy buen tutorial, muy bien explicado…..solo una pequeña observación creo que hay un error de dedo en cuando agregas los checkboxes al formulario debiera ser checkboxs en lugar de checkboxes, no es gran cosa pero alguien por ahí se puede confundir y no le funcionaria el ejemplo…..

    • sebastian Mar 07, 2011

      Roberto, checkboxes es la variable que se crea un poco mas arriba que contiene los checkboxs

  • Franco Jun 28, 2009

    hola Crystel ya no habra mas videos para los tutoriales? X(

    • Crysfel Jul 01, 2009

      mmmmm…. O_o la idea es que si, pero últimamente he tenido mucho trabajo y me ha sido imposible hacer los videos. espero que pronto pueda ahcer los que vienen y algunos que hacen falta.

      saludos

  • Fabricio Jul 04, 2009

    Este tutorial parece no funcionar con la versión 2, se queda en el “renderTo”. Muchas gracias por la inestimable ayuda que prestas.

    Saluti
    Fabricio

    • AlxRam Jul 14, 2009

      trata con:
      renderTo: document.body,
      funcionó para mi.

  • Jorge Andres Jul 13, 2009

    Hola…. Muy buen tutorial, esta es una de las partes que mas me interesa…. una pregunta… ¿Con qué propiedad hago que los texfields me queden uno seguido del otro?, es decir, que además de que queden vertical, tambien los pueda poner horizontal.

    • Crysfel Jul 13, 2009

      Necesitas cambiar el layout por “table” y configurar las columnas que necesites, si necesitas algún ejemplo registrate en el foro para platicar mejor.

      saludos

    • Jorge Andres Jul 15, 2009

      Ya me registré, pero no me han dado de alta

  • Jorge Andres Jul 15, 2009

    jeje… ya estoy activo… sorry

  • julitillo Jul 19, 2009

    Gracias por tu esfuerzo. s muy últim para mí.

    ¿Cómo puedo hacer para que un formulario tenga unos campos para un tipo de usuario y para el admin, por ejemplo, tenga algún campos más?.

    El mismo problema lo tengo con los botones de una ventana. Quiero que todos los usuarios tengan el “Close”, pero “el dueño” de los datos mostrados tenga además el “Delete”.

    Muchísimas gracias desde España.

  • sam Jan 07, 2010

    muy buena tu pagina la acabo de descubrir..
    saludos desde sinaloa

  • César Mendez Mar 16, 2010

    Crysfel y que novedades tienes?

  • Ditmar Mar 17, 2010

    Sublime!! Gracias por todo

  • JuanDavid Apr 06, 2010

    Una Pregunta:
    existe alguna funcion que me permita capturar el valor seleccionado en un RadioGroup, ya he probado con getValue y getGroupValue y no sirve….. gracias por la ayuda

  • Antonio May 13, 2010

    Como puedo hubicar textfields uno al lado del otro en un formulario

  • tierrarara May 19, 2010

    que diferencia hay entre boxLabel y fieldLabel en los form.Fields de ext js ?

  • MK00 Jun 06, 2010

    Muy buen tut. me esta ayudando bastante en una entrega que debo hacer en al universidad xD

  • JR82 Jun 18, 2010

    Muy bueno el tutorial. Necesito mostrar un textfield que no muestre el label, le agrego hideLabel:true al textfield y aunque me oculta el texto del label me sigue mostrando ‘:’ por defecto. si alguien sabe como quitarlo(‘:’) se lo agradeceria.
    Salu2

  • manduks Jun 21, 2010

    solo ocupa la propiedad label separator y ponel ” o usa un layout diferente al fomulario

  • os Jul 01, 2010

    Podras realizar un ejemplo de login con ext? gracias

  • Silverio Aug 09, 2010

    Muy buen tutorial, excelente, felicidades. Tienes un ejemplo de como hacer “Leave a Reply” es decir algo similar a justamente donde estoy llenando mi comentario. ¿Es con ext o con jQuery?

  • oscargut Aug 22, 2010

    una consulta con respecto al tamaño de los controles tambien se pueden dimensionar con % cambiando lo que se hace por px!!!

    • Crysfel Aug 23, 2010

      Si, es posible asignarle un string en lugar de un numero.

  • oscargut Aug 22, 2010

    y por favor un ejemplo corto por que me lanza error !!!

  • uFercho Sep 07, 2010

    excelente tutorial muy detallado me gusto mucho. siguan así XD

  • Raidel Sep 08, 2010

    Muy bueno en verdad, sobre todo por su sencillez

  • Merly.sr Sep 26, 2010

    de verdad interesante, normalmente yo agregaba un text field al hacer click en un boton de la sgte manera:

    var contador=1;
    function agregar()
    {
    var nt=document.createTextNode(‘Nuevo texto ‘+contador+’-');
    var nparrafo=document.getElementById(‘parrafo’);
    nparrafo.appendChild(nt);
    contador++;
    }

    donde mi ‘parrafo’ es un div de mi html.

    Bueno, quise hacerlo en Extjs:
    {buttons:[{text:'Agregar Sub_Proyecto',handler:this.agregar,scope:this}]},

    Y definí mi agregar:
    agregar:function(){
    nameField = new Ext.form.TextField({
    fieldLabel: ‘Name’,
    name: ‘ruleSetName’,
    anchor: ’100%’,
    allowBlank: false,
    grow: false
    });
    this.form.add(nameField);
    },
    Y no me agrega nada, agradecería sus ayudas.

  • luis Oct 22, 2010

    gracias, recien me inicio en EXTjs, y me parece muy bueno este material. Solo una consulta : tengo dos checks y un boton lo que quiero es hacer que cuando los 2 checks esten activos o marcados recien se active el boton para grabar….
    [code]
    //-- FORMULARIO DE APROBACION --//
    function aprobar(){
    var fisico = null;
    var ppto = null;
    if (fisicoCheck.getValue()){
    fisico=1;
    }else{
    fisico=2;

    }
    if (pptoCheck.getValue()){
    ppto=1;
    }else{
    ppto=2;
    }

    Ext.Ajax.request({
    url: '',
    method: 'POST',
    params: {
    idMeta : ,
    comentario : comentario.getValue(),
    fisico : fisico,
    ppto: ppto
    },
    success: function (action,options){
    var data=Ext.util.JSON.decode(action.responseText);
    Ext.Msg.alert('Name', data.message, function(btn, text){
    if (btn == 'ok' || btn=='yes'){
    window.close();
    }
    });
    }

    });
    }

    var form = new Ext.FormPanel({
    renderTo: 'form',
    defaults:{xtype:'textfield'},
    bodyStyle:'background: #E5E5E8;',
    border:false,
    width:700,
    labelWidth:200,
    labelAlign:'right',
    items:[
    fisicoCheck,
    pptoCheck,
    comentario
    ],
    buttonAlign: 'center', //<--botones alineados a la derecha
    buttons:[
    {
    text:'Aprobar metas',
    id:'botonmetas',
    disabled:true,

    listeners : {
    click: function(){
    aprobar();
    }
    }
    }
    ]
    });

    }
    }

    Ext.onReady(com.mod43.Form1.init,com.mod43.Form1);
    [/code]

    • Sebastian Mar 07, 2011

      Puede ser asi:
      dentro de las propiedades de los checkbox indica allowBlank: false
      y en el boton indica formBind: true

  • JulioM Oct 23, 2010

    Hola, muy bueno tu tutorial. Tengo una consulta, hay alguna forma de colocarle tootips a los campos del formulario. Asi como se ve en el formulario para agregar un comentario en esta web, claro quiza no tan funcional, pero algo parecido.

  • Martha Nov 22, 2010

    Saludos a Crysfel y Manduks, y a todos los foreros,
    Muy buen tutorial.
    Yo tambien ando empezando en esto de EXTJS,
    alguien podria decirme como hago para limpiar el formulario
    he probado con formulario.form.reset
    y tambien con formulario.getform.reset
    y no he obtenido resultados.
    Les agradeceria me ayudasen.

    • Crysfel Nov 22, 2010

      intenta lo siguiente:

      form.getForm().reset();

      Saludos

  • angelo Jan 02, 2011

    tengo en un estatus bar un boton, qiero que al hacer click en ese boton llame a una pagina php que destruya la variables y redireccione a otra pagina…. agradezco toda la ayuda

  • rafael Mar 05, 2011

    Hola,me esta surguiendo el siguiente problema,mira te explico, tengo un tabpanel, en uno de sus tab tiene layout border,en el west tiene un treepanel y en el center un formpanel, que me sucede,que los fieldset del formpanel,cuando cargo solo me muestra el primero,los demas fieldset no los carga hasta que no muevo o maximizo la ventana, le doy al firebug y sube la ventana, si me puedes ayudar con este problema, si necesitas mas detalles del error , escribeme y te envio las fotos o el codigo,muchas gracias de antemano.

  • Yotuel Apr 06, 2011

    ¿Es posible agregarle paginado a un formulario?
    Para ir navegando de registro en registro.
    Quiero hacer algo parecido a lo que hacen los formularios de Microsoft Access (Primero/Anterior/Siguiente/Último).
    Gracias de antemano.

  • Reynaldo Apr 21, 2011

    Sera posible realizar un formulario padre que habra un formulario hijo para la obtencion de datos que al cerrar los datos esten en el formulario padre

  • julian Jul 21, 2011

    buenas necesito saber como le doy formato de miles a numero mientras lo voy digitando en una caja de texto

  • julian Jul 21, 2011

    realmente te agradesco por la respuesta pero la verdad soy muy novato aun en lo de ext js entonces no entiendo muy bien la respuesta que me has dado
    la caja de texto que estoy creando esta de la siguiente manera y quiero que a lo que el usuario digite123456
    quede 123.456

    {
    xtype: ‘container’,
    columnWidth:.5,
    layout: ‘anchor’,
    items: [{
    xtype:'textfield',
    fieldLabel: 'Cedula Tenedor',
    arrowAlign:'center',
    value:'',
    name: 'tenedor',
    anchor:'75%',
    fieldCls:'numero',
    maskRe: /[\d\-]/,
    maxLength: 10 ,

    }
    les agredeceria mucho su ayuda se que la única forma de lograr las cosas es investigando pero ya le e dado muchas vueltas a esto y no lo e logrado
    de antemano muchas gracias

  • therion Jul 22, 2011

    bueno me parecen excelentes los tutoriales
    pero tengo una duda que espero por favor
    me respondan
    como puedo darle negrilla a los títulos de las cajas de texto

  • julian Jul 22, 2011

    pues yo solo le pongo la etiqueta a name:’ el titulo
    de esta manera lo hago
    y por ultimo les recomiendo mi pregunta
    Gracias espero te sirva therion

    • julian Jul 22, 2011

      la etiqueta que se utiliza en html

  • julian Jul 28, 2011

    por fa muchachos colaborenme con lo de la caja de texto solo me falta eso para terminar
    como para que al escribir
    123456789
    me quede
    123.456.789

  • Luis Olivera Oct 03, 2011

    Asi es q egresaste de la uni aqui en huajuapan, ajjejejej, quien lo hubiiera imaginado, llevo 3 meses aprendiendo extjs soy de huajuapan de leon y no me imagine q fueras egresado de la utm, felicidades,.. saludos

    • manduks Oct 03, 2011

      oralex que chido, pues echale ganas man. cualquier cosa aqui me encuentras iam@armando.mx

  • juan russi Oct 12, 2011

    nada

  • Hernan Nov 30, 2011

    Una consulta si me funciona tu aplicacion, pero yo quiero hacerlo de modo local que llame a mi servidor Apache, por eso esta parte del codigo como lo redirecciono:

    Ext.ns(‘com.quizzpot.tutorial’);

    Ext.BLANK_IMAGE_URL = ‘../ext-3.0/resources/images/default/s.gif’;

    com.quizzpot.tutorial.FormTutorial = {
    init: function(){

    ….

    ..

    }
    }

    Ext.onReady(com.quizzpot.tutorial.FormTutorial.init,com.quizzpot.tutorial.FormTutorial);

Leave a Reply







Updates

RSS

Subscribe to our feeds to receive updates of our newest posts and free tutorials.

Site search

Maybe we have what you need, would you like to search first?

Donations

Would you buy me a cup of coffee? I am sharing my knowledge and time with you, help this project grow. Thank you!