en js no existe un acceso directo a un objeto del DOM, por lo que debes llamar a dichos objetos con document.getElementById entre otras funciones o formas que existen para hacerlo:
Código HTML:
<SCRIPT LANGUAGE="JavaScript">
function isEmailAddress(theElement, nombre_del_elemento )
{
var s = theElement.value;
var filter=/^[A-Za-z][A-Za-z0-9_]*@[A-Za-z0-9_]+.[A-Za-z0-9_.]+[A-za-z]$/;
if (s.length == 0 ) return true;
if (filter.test(s))
return true;
else
alert("Ingrese una dirección de correo válida");
theElement.focus();
return false;
}
function valemail()
{
var emailcorrecto=isEmailAddress(document.getElementById('TextField'),'TextField');
if(emailcorrecto==false){alert ("error");
return false; //EVITA el envió del form
}
return true; //permite que el submit se complete (se envía el form)
}
</SCRIPT>
</head>
<body>
<FORM>
<INPUT TYPE="text" NAME="TextField" onsubmit="return valemail();">
<INPUT TYPE="submit" VALUE="Enviar" >
</FORM>
</body>
</html>
cuando utilizas una función en el evento onsubmit de un form, puedes omitir su envió devolviendo false en la misma función y necesitas pasarle al delegado del evento el valor devuelto de la función, para que el mismo pueda cancelar el envió, es decir: <INPUT TYPE="text" NAME="TextField" onsubmit="
return valemail();">