error al momento de ejecutar un JS
A ver si alguien me puede ayudar, tengo un prolema cuando ejecuto un archivo de Validacion de nombres me marca el siguiente error
Error:'nombre.value' is null or not an object.
estube investigando y al parecer dice que tengo 2 Id en un HTML o algo asi, me podrian ayudar. aqui les paso el codigo del Archivo .js
function validanom(Contratos){
if (Contratos.nombre.value.length < 2){
alert("Escriba por lo menos 3 caracteres en el campo "Nombre".");
Contratos.nombre.focus();
return (false);
}
var checknombreOK = "ABCDEFGHIJKLMN脩OPQRSTUVWXYZ脕脡脥脫脷" + "abcdefghijklmn帽opqrstuvwxyz谩茅铆贸煤 ";
var checknombreStr = Contratos.nombre.value;
var allValidnombre = true;
for (i = 0; i < checknombreStr.length; i++)
{
ch = checknombreStr.charAt(i);
for (j = 0; j < checknombreOK.length; j++)
if (ch == checknombreOK.charAt(j))
break;
if (j == checknombreOK.length)
{
allValidnombre = false;
break;
}
}
if (!allValidnombre) {
alert("Escriba s贸lo letras en el campo "Nombre".");
Contratos.nombre.focus();
return (false);
}
}
Error:'nombre.value' is null or not an object.
estube investigando y al parecer dice que tengo 2 Id en un HTML o algo asi, me podrian ayudar. aqui les paso el codigo del Archivo .js
function validanom(Contratos){
if (Contratos.nombre.value.length < 2){
alert("Escriba por lo menos 3 caracteres en el campo "Nombre".");
Contratos.nombre.focus();
return (false);
}
var checknombreOK = "ABCDEFGHIJKLMN脩OPQRSTUVWXYZ脕脡脥脫脷" + "abcdefghijklmn帽opqrstuvwxyz谩茅铆贸煤 ";
var checknombreStr = Contratos.nombre.value;
var allValidnombre = true;
for (i = 0; i < checknombreStr.length; i++)
{
ch = checknombreStr.charAt(i);
for (j = 0; j < checknombreOK.length; j++)
if (ch == checknombreOK.charAt(j))
break;
if (j == checknombreOK.length)
{
allValidnombre = false;
break;
}
}
if (!allValidnombre) {
alert("Escriba s贸lo letras en el campo "Nombre".");
Contratos.nombre.focus();
return (false);
}
}
Antes, para referenciar al valor de un Campo de un formulario, en IE por ejemplo, bastaba con poner idDelElemento.value, actualmente necesitas hacerlo de la forma correcta: la forma antigua, soportada por los navegadores viejitos (4.x) y nuevos seria:
document.NombreDelForm.NombreDelCampo.value;
o bien la "nueva" forma (DOM), soportada por los navegadores de un par de a帽os para aca:
document.getElementById("idDelCampo").value;
En tu ejemplo pones solo
Contratos.nombre.value.length
agrega "document." antes... (supongo que Contratos es el nombre del FORM)
Saludos, scriptman.
.::Apoya el software libre::.
document.NombreDelForm.NombreDelCampo.value;
o bien la "nueva" forma (DOM), soportada por los navegadores de un par de a帽os para aca:
document.getElementById("idDelCampo").value;
En tu ejemplo pones solo
Contratos.nombre.value.length
agrega "document." antes... (supongo que Contratos es el nombre del FORM)
Saludos, scriptman.
.::Apoya el software libre::.
