function validar() {
  F = document.formulario;
	
  //Valido Nombre
  if (F.nombre.value.length < 3) {
	alert("Debe especificar su \"Nombre\".");
    F.nombre.focus();
    return (false);
  }
  var checkOK = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ" + "abcdefghijklmnñopqrstuvwxyzáéíóú ";
  var checkStr = F.nombre.value;
  var allValid = true;
  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i);
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) {
      allValid = false;
      break;
    }
  }
  if (!allValid) {
    alert("Escriba sólo letras en el campo \"Nombre\".");
    F.nombre.focus();
    return (false);
  }

  //Valido Apellido
  if (F.apellido.value.length < 2) {
	alert("Debe especificar su \"Apellido\".");
    F.apellido.focus();
    return (false);
  }
  var checkOK = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ" + "abcdefghijklmnñopqrstuvwxyzáéíóú ";
  var checkStr = F.apellido.value;
  var allValid = true;
  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i);
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) {
      allValid = false;
      break;
    }
  }
  if (!allValid) {
    alert("Escriba sólo letras en el campo \"Apellido\".");
    F.apellido.focus();
    return (false);
  }  

  //Valido Localidad
  var checkOK = "1234567890ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ" + "abcdefghijklmnñopqrstuvwxyzáéíóú ";
  var checkStr = F.localidad.value;
  var allValid = true;
  if (checkStr.length > 1) {
    for (i = 0; i < checkStr.length; i++) {
	  ch = checkStr.charAt(i);
      for (j = 0; j < checkOK.length; j++)
		if (ch == checkOK.charAt(j))
          break;
      if (j == checkOK.length) {
	    allValid = false;
        break;
      }
	}
    if (!allValid) {
	  alert("Escriba sólo letras o números en el campo \"Localidad\".");
      F.localidad.focus();
	  return (false);
    }    
  }	

  //Valido Pais
  var checkOK = "1234567890ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ" + "abcdefghijklmnñopqrstuvwxyzáéíóú ";
  var checkStr = F.pais.value;
  var allValid = true;
  if (checkStr.length > 1) {
    for (i = 0; i < checkStr.length; i++) {
	  ch = checkStr.charAt(i);
      for (j = 0; j < checkOK.length; j++)
		if (ch == checkOK.charAt(j))
          break;
      if (j == checkOK.length) {
	    allValid = false;
        break;
      }
	}
    if (!allValid) {
	  alert("Escriba sólo letras o números en el campo \"Pais\".");
      F.pais.focus();
	  return (false);
    }    
  }	  
  
  //Valido Telefono
  var checkOK = "0123456789- ()";
  var checkStr = F.tel.value;
  var allValid = true;
  if (checkStr.length > 1) {
    for (i = 0; i < checkStr.length; i++) {
	  ch = checkStr.charAt(i);
      for (j = 0; j < checkOK.length; j++)
        if (ch == checkOK.charAt(j))
	      break;
      if (j == checkOK.length) {
		allValid = false;
        break;
	  }
    }
	if (!allValid) {
	  alert("Escriba sólo Numeros en el campo \"Teléfono\".");
      F.tel.focus();
	  return (false);
    }  
  }	  

  //Valido Fax
  var checkOK = "0123456789- ()";
  var checkStr = F.fax.value;
  var allValid = true;
  if (checkStr.length > 1) {
    for (i = 0; i < checkStr.length; i++) {
	  ch = checkStr.charAt(i);
      for (j = 0; j < checkOK.length; j++)
        if (ch == checkOK.charAt(j))
	      break;
      if (j == checkOK.length) {
		allValid = false;
        break;
	  }
    }
    if (!allValid) {
	  alert("Escriba sólo Numeros en el campo \"Fax\".");
      F.fax.focus();
	  return (false);
    }  
  }	    

  //Valido Pax
  if (F.cantidad_pax.value.length < 1) {
	alert("Debe especificar la \"Cantidad de Pasajeros\".");
    F.cantidad_pax.focus();
    return (false);
  }
  var checkOK = "0123456789 ";
  var checkStr = F.cantidad_pax.value;
  var allValid = true;
  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i);
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) {
      allValid = false;
      break;
    }
  }
  if (!allValid) {
	alert("Escriba sólo Numeros en el campo \"Cantidad de Pasajeros\".");
    F.cantidad_pax.focus();
    return (false);
  }  

  //Valido Correo Electroncio
  var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZ@" + "abcdefghijklmnopqrstuvwxyz-_.";
  var checkStr = F.email.value;
  var allValid = true;
  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i);
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) {
      allValid = false;
      break;
    }
  }
  if (!allValid) {
	alert("Escriba una dirección de correo electrónico válida en el campo \"Email\".");
    F.email.focus();
    return (false);
  }  
  if ((F.email.value.indexOf ('@', 0) == -1)||(F.email.value.length < 5)) {
	alert("Escriba una dirección de correo electrónico válida en el campo \"Email\".");
	F.email.focus();
    return (false);
  }

  //Valido Comentarios
  var enter = "\n";
  var checkOK = "0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ$()" + "abcdefghijklmnñopqrstuvwxyzáéíóú,.:_-+¡!¿?=; " + String.fromCharCode(13) + enter;
  var checkStr = F.comentarios.value;
  var allValid = true;
  for (i = 0; i < checkStr.length; i++) {
    ch = checkStr.charAt(i);
    for (j = 0; j < checkOK.length; j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length) {
      allValid = false;
      break;
    }
  }
  if (!allValid) {
	alert("Ha ingresado caracteres no válidos en el campo \"Comentarios\".");
    F.comentarios.focus();
    return (false);
  }  

  return (true);
}

function validar_reserva() {
  F = document.formulario;
  F.entrada.value = F.ano_entrada.value + "-" +F.mes_entrada.value + "-" + F.dia_entrada.value;
  F.salida.value = F.ano_salida.value + "-" +F.mes_salida.value + "-" + F.dia_salida.value;  
  var resultado_validacion = validar();
  if (resultado_validacion == true) { 
	//alert('Ok');
	F.submit(); 
	} 
}