2010-08-01 15 views
80

पृष्ठ लोड होने पर मैं इनपुट बॉक्स पर डिफ़ॉल्ट फ़ोकस सेट करने का प्रयास कर रहा हूं (उदाहरण: google)। मेरा पृष्ठ बहुत आसान है, फिर भी मैं यह नहीं समझ सकता कि यह कैसे करें।पेज लोड पर एक HTML इनपुट बॉक्स पर फ़ोकस सेट करना

<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> 

कैसे आ वह काम नहीं करता है, जबकि इस ठीक काम करता है:

यह मैं अब तक क्या मिल गया है है?

<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> 

मदद की बहुत सराहना कर रहा है :-)

उत्तर

33

यह पंक्ति:

<input type="password" name="PasswordInput"/> 

एक आईडी विशेषता है, इसलिए की तरह होना चाहिए:

<input type="password" name="PasswordInput" id="PasswordInput"/> 
271

और आप उपयोग कर सकते हैं एचटीएमएल 5 की ऑटोफोकस विशेषता (आईई 9 और बेल को छोड़कर सभी मौजूदा ब्राउज़रों में काम करती है ओउ)। केवल आईई 9 या इससे पहले, या अन्य ब्राउज़रों का पुराना संस्करण होने पर ही अपनी स्क्रिप्ट को कॉल करें।

<input type="text" name="fname" autofocus> 
+24

"सभी वर्तमान ब्राउज़रों में काम करता है" - कि वास्तव में "सभी मौजूदा ब्राउज़रों" की आपकी परिभाषा पर निर्भर करता है। –

+7

यानी 9: http://stackoverflow.com/questions/8280988/how-to-make-input-autofocus-in-internet-explorer – jedierikb

+0

@ भावेशगंगानी ['ऑटोफोकस ' इंटरनेट एक्सप्लोरर 9 और पुराने संस्करणों में समर्थित नहीं है।] (http://www.w3schools.com/tags/att_input_autofocus.asp) –

0

तुम भी इस्तेमाल कर सकते हैं:

<body onload="focusOnInput()"> 
    <form name="passwordForm" action="verify.php" method="post"> 
     <input name="passwordInput" type="password" /> 
    </form> 
</body> 

और फिर अपने जावास्क्रिप्ट में:

function focusOnInput() { 
    document.forms["passwordForm"]["passwordInput"].focus(); 
} 
2

यह IE के साथ आम मुद्दों में से एक है और के लिए यह आसान है ठीक। इनपुट में दो बार। फ़ोकस() जोड़ें।

फिक्स: -

function FocusOnInput() { 
    var element = document.getElementById('txtContactMobileNo'); 
    element.focus(); 
    setTimeout(function() { element.focus(); }, 1); 
} 

और $ पर FocusOnInput() फोन (document) .ready (function() {.....};

संबंधित मुद्दे