buenas tardes,
espero que esten bien
tengo el siguiente problema:
uso el complemento LIVEVALIDATION (
http://livevalidation.com/examples)
para validar los campos de un formulario.
el formulario es cargado en la pagina HTML maestra de forma dinamica con AJAX
al hacer esto, las validaciones con LIVEVALIDATION no funcionan pero
cuando el formulario no se carga con AJAX sino que se incrusta el codigo del formulario
en la pagina HTML si funciona.
he buscado en internet y al parecer es porque al llamar el formulario con AJAX
los ID de los campos INPUT del formulario no se han cargado en el DOM de la página HTML
por tal motivo se debe hacer el llamado de las validaciones luego de la sentencia
RESPONSETEXT, lo he hecho de esta forma y me ha funcionado cuando pongo
la validacion del primer campo, pero no cuando pongo la validación
de todos los campos.
-----CODIGO ACTUAL------
PAGINA MAESTRA:
<HTML>
<HEAD>
<script src="LIVEVALIDATION.js" language="JavaScript"></script>
<SCRIPT>
CODIGO AJAX QUE CARGA EL FORMULARIO
</SCRIPT>
</HEAD>
<BODY>
<DIV id="CONTENEDOR">
aca se carga el formulario
</DIV>
</BODY>
</HTML>
FORMULARIO:
<FORM>
<INPUT TYPE="TEXT" ID="F1">
<SCRIPT>
var f1 = new LiveValidation('f1');
f1.add( Validate.Presence );
</SCRIPT>
</FORM>
-----CODIGO SUGERIDO (PERO NO FUNCIONA TOTALMENTE)------
PAGINA MAESTRA:
<HTML>
<HEAD>
<script src="LIVEVALIDATION.js" language="JavaScript"></script>
<SCRIPT>
function CARGAFORMULARIO()
{
.
.
.
if(conexion1.readyState == 4)
{
......responseText;
var f1 = new LiveValidation('f1');
f1.add( Validate.Presence );
}
else
if (conexion1.readyState==1 || conexion1.readyState==2 || conexion1.readyState==3)
{
...
}
}
</SCRIPT>
<BODY>
<DIV id="CONTENEDOR">
aca se carga el formulario
</DIV>
</BODY>
</HTML>
-----CODIGO QUE SI FUNCIONA------
PAGINA MAESTRA:
<HTML>
<HEAD>
<script src="LIVEVALIDATION.js" language="JavaScript"></script>
</HEAD>
<BODY>
<DIV id="CONTENEDOR">
<FORM>
<INPUT TYPE="TEXT" ID="F1">
<SCRIPT>
var f1 = new LiveValidation('f1');
f1.add( Validate.Presence );
</SCRIPT>
</FORM>
</DIV>
</BODY>
</HTML>
IMPORTAN: la funcion javascript que carga el formulario es llamada por medio de un enlace que envía los datos
que contienen los campos del formulario para que el usuario los modifique y guarde los cambios.
muchas gracias