Mar Jul 03, 2007 9:06 am
|
 |
marcosss
Perlero Nuevo

|
Registrado: 14 May 2007
Mensajes: 87
|
|
| Validar campos javascript |
|
|
¡Hola! Estoy haciendo un proyecto con php, mysql y javascript, y estoy validando los formularios, y algunos objetos de algunos formularios los tengo hechos de forma 'dinámica' con javascript y no sé cómo validarlos. El ejemplo en código es el siguiente, con este código se crean nuevos ámbitos, y para cada ámbito se crea su nombre y el número de horas:
| Código: |
<script type="text/javascript">
num=0;
function crearAmbito(obj) {
num++;
//Creamos los datos del area
fi = document.getElementById('fiel');
contenedor = document.createElement('div');
contenedor.id = 'div'+num;
fi.appendChild(contenedor);
txt = document.createElement('<br>'); // Meto un salto de línea
contenedor.appendChild(txt);
txt = document.createElement('<br>'); // Meto un salto de línea
contenedor.appendChild(txt);
txt = document.createTextNode('Nombre del ámbito: '); //Creamos el modulo
ele = document.createElement('input');
ele.type = 'text';
ele.size='40';
ele.name = 'cNombreAmbito'+num;
contenedor.appendChild(txt);
contenedor.appendChild(ele);
txt = document.createElement('<br>'); // Meto un salto de línea
contenedor.appendChild(txt);
txt = document.createElement('<br>'); // Meto un salto de línea
contenedor.appendChild(txt);
txt = document.createTextNode(' Horas del ámbito: '); //Creamos las horas del modulo
ele = document.createElement('input');
ele.type = 'text';
ele.name = 'cHorasAmbito'+num;
ele.size='5';
contenedor.appendChild(txt);
contenedor.appendChild(ele);
txt = document.createElement('<br>'); // Meto un salto de línea
contenedor.appendChild(txt);
txt = document.createElement('<br>'); // Meto un salto de línea
contenedor.appendChild(txt);
ele = document.createElement('input');
ele.type = 'button';
ele.value = 'Borrar';
ele.name = 'div'+num;
ele.onclick = function () {borrar(this.name)}
contenedor.appendChild(ele);
}
function borrar(obj) {
fi = document.getElementById('fiel');
fi.removeChild(document.getElementById(obj));
}
</script> |
Me gustaría saber cuál es la forma para validar los nombres y número de horas de los ámbitos. Muchas gracias |
|
|
|

Mar Jul 03, 2007 11:34 am
|
 |
kidd
Creador de Perl en Español

|
Registrado: 15 Oct 2003
Mensajes: 1389
Ubicación: México
|
|
|
|
|
| Debes de nombar cada ambito con un id único, de esa manera cuando pasas al PHP puedes saber que campos son de que ámbito y así poderlos comparar. |
|

Mie Jul 04, 2007 2:53 am
|
 |
marcosss
Perlero Nuevo

|
Registrado: 14 May 2007
Mensajes: 87
|
|
|
|
|
No, pero yo no quiero validar en PHP, lo quiero hacer en javascript, con una función del estilo:
| Código: |
//Validamos un campo tipo texto
function validaTexto(campo,nombreCampo){
var ubicacion
var enter = "\n" //Los caracteres válidos son:
var caracteres = "abcdefghijklmnopqrstuvwxyzñ1234567890 ABCDEFGHIJKLMNOPQRSTUVWXYZÑáéíóúÁÉÍÓÚºª/¿?()%'!¡-+*.,;:" + String.fromCharCode(13) + enter
var contador = 0
for (var i=0; i < campo.length; i++) {
ubicacion = campo.substring(i, i + 1)
if (caracteres.indexOf(ubicacion) != -1) {
contador++
} else {
alert("ERROR en el "+nombreCampo+": No se acepta el caracter '" + ubicacion + "'.")
return false
}
}
} |
Y a esta función, para validar algo la llamo:
| Código: |
if (f.cNombre.value!="")
if (validaTexto(f.cNombre.value, 'Nombre')==false)
return(false);
|
Pero es que de la forma que creo el ámbito en javascript no sé como llamarlo para que el valor se valide en la función validaTexto
¿entendéis lo que quiero decir? |
|

Powered by phpBB © 2001, 2005 phpBB Group
|