2009-08-20 6 views
1

Lorsque vous render:tabindex et <input type = "file" /> différent dans Firefox et IE

<input type="file" /> 

vous obtenez une boîte et un bouton, à droite? (Au moins dans Firefox et IE.)

D'une part, dans Firefox, vous pouvez seulement onglet pour (focus) le bouton, mais dans IE vous pouvez onglet pour (focus) la boîte et le bouton. D'autre part, je veux que IE se comporte comme Firefox, je veux dire, je dois me débarrasser de la mise au point de la boîte. Pensez à l'utilisateur naviguant à travers le clavier.

(La raison est parce que <input type="file" /> ne sera pas visible. Au lieu de cela, un <div> avec un background-image va faire semblant d'être le <input type="file" />.)

Répondre

1

Si vous êtes désireux de remettre à la div, pourquoi ne pas joindre un événement au soumettre, et appeler la fonction d'événement focus() OnFocus() sur la div dans la fonction:

$("#MySubmit").focus(function(){ 
    $("#MyDiv").focus(); 
}); 
+0

un div peut se concentrer? Quoi qu'il en soit, si j'appuie sur enter (naviguer dans le clavier) quand la div est sur focus, je n'obtiendrai aucun résultat. Pour des raisons de sécurité, je ne peux pas ouvrir la boîte de dialogue de navigation si je ne fais rien d'autre que cliquer (ou appuyer sur Entrée) sur le bouton du fichier d'entrée. Ainsi, des choses comme ceci ne fonctionnera pas: $ ("# MyDiv"). Cliquez sur (function() { $ ("# MySubmit"). Click(); } –

Questions connexes