• Publicidad

Validar campos javascript

Discute todo acerca de JavaScript así como DHTML o la tecnología AJAX.

Validar campos javascript

Notapor marcosss » 2007-07-03 10:06 @463

¡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: Seleccionar todo
<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
marcosss
Perlero nuevo
Perlero nuevo
 
Mensajes: 87
Registrado: 2007-05-14 06:23 @307

Publicidad

Notapor kidd » 2007-07-03 12:34 @565

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.
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México

Notapor marcosss » 2007-07-04 03:53 @204

No, pero yo no quiero validar en PHP, lo quiero hacer en javascript, con una función del estilo:


Código: Seleccionar todo
//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: Seleccionar todo
 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?
marcosss
Perlero nuevo
Perlero nuevo
 
Mensajes: 87
Registrado: 2007-05-14 06:23 @307


Volver a JavaScript

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados

cron