2009-10-31 2 views
0

J'utilise un UIWebView pour charger un formulaire HTML dans mon application iPhone.Comment définir le bouton par défaut (soumettre) pour une page chargée dans un iPhone UIWebView (stringByEvaluatingJavaScriptFromString?)

Le formulaire comporte trois boutons de soumission (et la sélection de «Go» sur le clavier de l'iPhone sélectionne le premier bouton de soumission).

Je suppose que je peux définir un autre bouton de soumission "par défaut" avec l'injection de Javascript dans le formulaire téléchargé, mais je ne sais pas bien le Javascript.

Est-ce que quelqu'un sait comment changer le bouton de soumission par défaut?

Répondre

0

J'ai juste frappé ce problème et j'utilise maintenant la paire de techniques suivante;

Tout d'abord, la plupart des navigateurs utilisent le « premier » bouton d'envoi se trouve sur la forme, et que je veux que mon action par défaut pour être « Envoyer », ajouter ce qui suit immédiatement après la balise:

<input type="submit" name="Send" value="hidden for default enter action" style="display:none"> 

Il est pas affiché, mais toujours utilisé comme un bouton de soumission lorsque vous appuyez sur entrer - sauf sur l'iPhone pour une raison quelconque - éventuellement webkit décide que le bouton de soumission caché doit être ignoré, car il est caché. Pour ces navigateurs, je fais simplement ce qui suit:

<input type="text" name="test" value="something" 
    onfocus="this.form.submitBtn.name='Send';" 
    onblur="this.form.submitBtn.name='Search';" 
    > 
<input type="submit" id="submitBtn" name="Search" value="Search"> 

à savoir lorsque les utilisateurs clique sur le champ de saisie, il change le nom du bouton par défaut à l'action que je veux; quand je clique sur le champ, il revient à l'original.

Questions connexes