Otra visión distinta... Una forma de validación alternativa sería mediante expresiones regulares con una función tan simple como la que sigue:
Código:
function versal(cadena) {
var er = /^[A-Z,Ñ].*$/ ;
return er.test(cadena)
}
Esta función devuelve el valor lógico verdadero si el primer carácter de la cadena está entre la A y la Z, incluyendo la Ñ, devuelve falso en caso contrario.
Ejemplo completo:
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Strict//ES" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- Validación de letra inicial mayúscula - 2003.01.06 - Mikel Gómez -->
<html>
<head>
<title>Validación de letra inicial mayúscula</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript">
<!--
// Validación inicial en mayúsculas mediante expresión regular.
function versal(cadena) {
var er = /^[A-Z,Ñ].*$/ ;
return er.test(cadena)
}
// Validación del nombre introducido.
function validarNombre() {
cadena = document.getElementById('nombre').value ;
if (versal(cadena))
alert('La inicial ES una letra mayúscula');
else
alert('La inicial NO es una letra mayúscula');
}
//-->
</script>
<style type="text/css">
<!--
.normal {font: 9pt verdana;}
.titulo {font: 10pt verdana; font-weight: bold;}
-->
</style>
</head>
<body>
<div id="cuerpo" class="normal">
<div id="titulo" class="titulo">
Validación de letra inicial mayúscula
<hr />
<br />
</div>
<form id="frm" action="" method="get">
<div id="formulario" class="formulario">
Nombre:
<input type="text" id="nombre" value="" />
<input type="button" id="num" value="Validar" onclick="validarNombre()" />
</div>
</form>
<p>
<a href="http://validator.w3.org/check/referer"><img
src="http://www.w3.org/Icons/valid-xhtml11"
alt="Valid XHTML 1.1!" height="31" width="88" style="border: 0px;" /></a>
</p>
</div>
</body>
</html>
Si necesitas más información...
Saludos,
Mikel