Hola, a mi poniendo esto me funciona:
Código PHP:
<html>
<head>
<script language="JavaScript" type="text/JavaScript">
function limpiar(campo)
{
var field = document.getElementById(campo);
field.value="";
}
function cambiar(campo, valor)
{
var field = document.getElementById(campo);
if(field.value=="")
{
field.value=valor;
}
}
function validar()
{
with(document.login)
{
if(nick.value == 'usuario' || nick.value=='')
{
alert('Introduzca su nick');
nick.focus();
return false;
}
else if(password.value=='' || password.value=='')
{
alert('Introduzca su contraseña');
password.focus();
return false;
}
else
{
document.login.submit();
}
}
}
</script>
</head>
<body>
<form action="lo_que_sea.html" method="post" name="login" id="login" onsubmit="return validar()">
<input type="text" name="nick" id="nick" onclick="limpiar('nick')" onblur="cambiar('nick','usuario')" value="usuario" size="10" maxlength="15" />
<input type="password" name="password" id="password" onfclick="limpiar('password')" onblur="cambiar('password','password')" value="password" size="10" maxlength="20" />
<input type="submit" style="margin:0; padding:0; border:0; background-color:transparent"></input>
</form>
</body>
</html>
Los cambios que he hecho han sido:
-Quitar la imagen dejando solo el boton.
-He cambiado esto: else if(password.value=='')
por esto: else if(password.value=='' || password.value=='password')
-Y he cambiado esto: submit();
por esto: document.login.submit();
Haciendo esos cambios me ha funcionado tanto con el ratón como con el enter...
Mira a ver si a ti te funciona.
Saludos.