Wie man set cursor focus onload?

Ich verwenden h:selectOneRadio-tag.

Ich brauche, um den cursor-Fokus auf die erste radio-Bereich.

<f:view>
<html>
     <head>
           <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">      
     </head>
     <body>
         <h:form id="focusForm" >
              <h:selectOneRadio id="testRadioId" value="">
                     <f:selectItem id="si1" itemLabel="JSF" />
                     <f:selectItem id="si2" itemLabel="JSP" />
              </h:selectOneRadio>
         </h:form>
</body></html></f:view>

hier Der Firefox (- browser) weisen id :focusForm:testRadioId:0 das Feld.

Also ich benutze Folgendes script:

document.getElementById("focusForm:testRadioId:0").focus();

Aber,

Einige Male, kann ich dynamisch ändern, deaktivieren Sie das Feld "radio" aus backing-bean.

<h:selectOneRadio id="testRadioId" value="">
                 <f:selectItem id="si1" itemLabel="JSF" itemDisabled="true"/>
                 <f:selectItem id="si2" itemLabel="JSP" />
</h:selectOneRadio>

So, hier deaktiviere ich die ersten radio-button.

Nun, Wenn ich das gleiche Skript, dann nicht einstellen, den cursor-Fokus auf die erste radio-Bereich.

wie mache ich das? das heißt, wie verändern mein Skript dynamisch während der onload?

Bitte helfen Sie mir.

Vielen Dank im Voraus.


Update:

Dank BaluC.

Dem folgenden code gearbeitet wird.

 <a4j:loadScript src="resource://jquery.js"/>
 <script type="text/javascript">   
         function setFocusRadioField()
         {
              jQuery(':input:visible:enabled:first').focus(); 
          }
 </script>

<body onload="setFocusRadioField();">
</body>

Aber die folgende code nicht funktioniert.
Ich Teste die folgende Weise:

jQuery('#focusForm\:testRadioId:enabled:first').focus();

Dann,

jQuery('#focusForm\\:testRadioId:enabled:first').focus();

Dann,

var id = "#focusForm:testRadioId:enabled:first".replace(/:/g, "\\:");
jQuery(id).focus();

Ich weiß nicht, wo ich den Fehler.
Besser, ich brauche den cursor-Fokus mit id.
Vielen Dank im Voraus.

InformationsquelleAutor Eswar | 2010-06-17
Schreibe einen Kommentar