javascript - poner - Establecer el foco en un cuadro de entrada HTML en la carga de la página
input focus javascript (4)
Estoy intentando establecer el foco predeterminado en un cuadro de entrada cuando se carga la página (ejemplo: google). Mi página es muy simple, pero no puedo entender cómo hacer esto.
Esto es lo que tengo hasta ahora:
<html>
<head>
<title>Password Protected Page</title>
<script type="text/javascript">
function FocusOnInput()
{
document.getElementById("PasswordInput").focus();
}
</script>
<style type="text/css" media="screen">
body, html {height: 100%; padding: 0px; margin: 0px;}
#outer {width: 100%; height: 100%; overflow: visible; padding: 0px; margin: 0px;}
#middle {vertical-align: middle}
#centered {width: 280px; margin-left: auto; margin-right: auto; text-align:center;}
</style>
</head>
<body onload="FocusOnInput()">
<table id="outer" cellpadding="0" cellspacing="0">
<tr><td id="middle">
<div id="centered">
<form action="verify.php" method="post">
<input type="password" name="PasswordInput"/>
</form>
</div>
</td></tr>
</table>
</body>
</html>
¿Cómo es que eso no funciona mientras esto funciona bien?
<html>
<head>
<script type="text/javascript">
function FocusOnInput()
{
document.getElementById("InputID").focus();
}
</script>
</head>
<body onload="FocusOnInput()">
<form>
<input type="text" id="InputID">
</form>
</body>
</html>
La ayuda es muy apreciada :-)
Esta línea:
<input type="password" name="PasswordInput"/>
debería tener un atributo id , como ese:
<input type="password" name="PasswordInput" id="PasswordInput"/>
Este es uno de los problemas comunes con IE y la solución para esto es simple. Agregue .focus () dos veces a la entrada.
Corrección: -
function FocusOnInput() {
var element = document.getElementById(''txtContactMobileNo'');
element.focus();
setTimeout(function () { element.focus(); }, 1);
}
Y llame a FocusOnInput () en $ (document) .ready (function () {.....};
También puedes usar:
<body onload="focusOnInput()">
<form name="passwordForm" action="verify.php" method="post">
<input name="passwordInput" type="password" />
</form>
</body>
Y luego en tu JavaScript:
function focusOnInput() {
document.forms["passwordForm"]["passwordInput"].focus();
}
Y puede usar el atributo de enfoque automático de HTML5 (funciona en todos los navegadores actuales excepto IE9 y abajo). Solo llame a su script si es IE9 o anterior, o una versión anterior de otros navegadores.
<input type="text" name="fname" autofocus>