Tengo un formulario donde tengo un grupo de radio 'sí', 'no'.extjs eliminar/leer campo de texto para formar un error?
Cuando hago clic en 'sí', tengo un campo de texto agregado a un fieldset en el formulario con la opción de configuración: allowBlank: false. Entonces hay validación en el campo. Cuando hago clic en 'no', todos los campos se eliminan del fieldset que está presente en el formulario.
El problema es cuando la validación está activa, así que cuando ingresas al campo de texto y haces clic sin ingresar ningún carácter y hago clic en el botón de radio 'no', el campo de texto desaparece y me da el siguiente error cuando lo cojo:
Element.alignToXY con un elemento que no existe
cuando hago clic después en el botón de radio 'sí', el campo de texto se muestra de nuevo pero me da un error:
TypeError: dom no está definido
Pude detectar estos errores y no hacer nada porque, de hecho, el formulario parece estar funcionando, los campos de texto se agregaron y eliminaron como debería, solo hay errores presentes y no me gusta su concepto. ¿Alguien tiene una pista de por qué ocurre este error y cómo deshacerse de él para que funcione correctamente al 100%?
Aquí se muestra un ejemplo del código:?
var radiogroup = new Ext.form.RadioGroup({
fieldLabel: 'Radio group test',
allowBlank: false,
anchor: '85%',
items: [{
boxLabel: 'Yes',
name: 'radio',
inputValue: 1
}, {
boxLabel: 'No',
name: 'radio',
inputValue: 2
}],
listeners: {
change: function (rg, radio) {
if (radio.inputValue == 1) {
var textfield_test = new Ext.form.TextField({
fieldLabel: 'Test',
allowBlank: false,
id: 'test',
name: 'test',
anchor: '85%',
width: 320,
helpText: 'test'
});
textfield_fieldset.insert(textfield_fieldset.items.length, textfield_test);
} else {
try {
txt_test = Ext.getCmp('test');
if (txt_test) {
textfield_fieldset.remove(txt_test);
}
textfield_fieldset.doLayout();
} catch (err) {
alert(err);
}
}
}
}
});
Puede ser más útil poner juntos un ejemplo más completo en jsfiddle.net y vincularlo. – TML
Es un ejemplo. Solo eliminando un campo de texto de un fieldset y añadiéndolo a un fieldset en un panel de formulario ... El radiogroup está dentro del mismo campo de campo textfield ... ¿Qué es lo que necesita más? – Hein
También estoy teniendo este problema. Necesito crear dinámicamente un FormPanel desde cero con una respuesta AJAX, de acuerdo con los datos devueltos. Lamentablemente, este error está arruinando por completo un esfuerzo por lo demás interesante. –