Pregunta

Estoy creando cuenta de cliente OnePage y tengo que validar formularios creados dinámicamente adicionales de direcciones, todos en la misma página .

Yo entiendo que en Magento se debe utilizar new VarienForm para validar sus formas. hacer que acaba de llamar a la línea siguiente

var dataForm = new VarienForm('form-id', true);

Pero lo que si formas se crean dinámicamente como direcciones de clientes adicionales y todas las formas están en la misma página y hay que comprobar si la forma valida o no

if(dataForm.validator.validate())

¿No es esta var dataFrorm llegar overwriten con formulario generado después? Así que ahora si se intenta comprobar si la primera forma quedó validada, que en realidad cheques últimos? Sí que podía generar la forma de identificación de forma dinámica, pero entonces tendría que hacer lo mismo con el nombre de la variable JS? Eso no suena bien, ¿o no? ¿Hay un mejor enfoque para lograr el mismo objetivo?

¿Fue útil?

Solución

Si crea dinámicamente formas, seguro que hacerlo a través de un javascript (ajax) petición.

Así que hay un lugar donde se puede añadir javascript después de la creación del formulario.

En el caso de que tenga un recuento limitado de pasos, cada paso tiene su propia forma de identificación, ya que cada forma tiene diferentes contenidos / campos.

Pero: si siempre utiliza la misma forma y sólo cambia el contenido, ya no tienes que crear el objeto nuevo, ya que está ligado al elemento DOM, no el ID. En este caso, aunque no se debe volver a crearla.

but2: si siempre reemplazar todo el formulario, puede utilizar el mismo ID, como la forma de edad está lejos de todos modos. Por lo que siempre puede crear nuevo con la misma forma id

regla muy importante:. Nunca tienen más de un elemento con el mismo ID en la página, que hará que las cosas rotas

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top