Textarea et formulaire
Résolu
Ulrich7
-
Ulrich7 -
Ulrich7 -
Bonjour, tout d'abord je tiens à préciser que je n'y connais rien en javascript, seulement HTML/PHP, mais que la solution à mon problème semble être un petit script en javascript. Donc je pose ma question :
Est-il possible de :
1) Dans un textarea, lui-même situé dans un formulaire, à chaque fois que l'utilisateur tape sur la touche "Entrée", ne pas faire de retour chariot mais valider le formulaire.
2) Lors du chargement de cette page, avec le formulaire et le textarea, faire en sorte que l'utilisateur puisse taper son texte directement, comme si il avait cliquer dans le textarea.
Merci d'avance pour votre aide.
Est-il possible de :
1) Dans un textarea, lui-même situé dans un formulaire, à chaque fois que l'utilisateur tape sur la touche "Entrée", ne pas faire de retour chariot mais valider le formulaire.
2) Lors du chargement de cette page, avec le formulaire et le textarea, faire en sorte que l'utilisateur puisse taper son texte directement, comme si il avait cliquer dans le textarea.
Merci d'avance pour votre aide.
A voir également:
- Textarea et formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
- Problème avec Google Chrome - Forum Google Chrome
3 réponses
Salut,
Tiens donc j'ai eu le même problème tout à l'heure =D
https://forums.commentcamarche.net/forum/affich-21459356-javascript-ie-ff-onkeypress
Mais puisque tu dis ne rien y connaitre en Javascript, je vais t'expliquer.
document.forme.elemName.onkeypress
Quand, dans le formulaire "forme", qui comprend le champ (texte ou textarea) elemName, on appuie sur une touche, alors ..
function(e){
var evt = window.event ? event : e;
createElement(evt);
}
On déclare une fonction, qui prend le paramètre 'e' pour Mozilla Firefox. A l'intérieur on déclare la variable 'evt' qui, si window.event (sous IE uniquement) existe, on la prend, sinon on utilise le paramètre donné pour Firefox. Ensuite on appelle la fonction finale. Toutefois dans le code en dessous de ce post j'ai mis quelque chose de plus simple, tant que cela fonctionne.
if((window.event && (!evt.keyCode || evt.keyCode==13) ) || (!window.event && (!evt.charCode || evt.charCode==0))) ..
Là, si tu ne connais pas le Javascript, alors je pense que ce n'est même pas la peine d'expliquer. En gros, il vérifie si c'est bien la touche "Enter".
Bug : Sous Mozilla, la touche Retour arrière aura le même effet que l'Entree, et aussi les flèches directionnelles. Je suis en train de chercher une solution...
Pour qu'il tape le texte directement, cela s'appelle le focus.
document.formulaire.textarea.focus()
Attention, un textarea où tu interdis les retours à la ligne revient à un <input type="text"> ;
Voici deux codes, à adapter aux tiens.
Code pour IE uniquement
Code pour IE et FF
Voila ;-)
Tiens donc j'ai eu le même problème tout à l'heure =D
https://forums.commentcamarche.net/forum/affich-21459356-javascript-ie-ff-onkeypress
Mais puisque tu dis ne rien y connaitre en Javascript, je vais t'expliquer.
document.forme.elemName.onkeypress
Quand, dans le formulaire "forme", qui comprend le champ (texte ou textarea) elemName, on appuie sur une touche, alors ..
function(e){
var evt = window.event ? event : e;
createElement(evt);
}
On déclare une fonction, qui prend le paramètre 'e' pour Mozilla Firefox. A l'intérieur on déclare la variable 'evt' qui, si window.event (sous IE uniquement) existe, on la prend, sinon on utilise le paramètre donné pour Firefox. Ensuite on appelle la fonction finale. Toutefois dans le code en dessous de ce post j'ai mis quelque chose de plus simple, tant que cela fonctionne.
if((window.event && (!evt.keyCode || evt.keyCode==13) ) || (!window.event && (!evt.charCode || evt.charCode==0))) ..
Là, si tu ne connais pas le Javascript, alors je pense que ce n'est même pas la peine d'expliquer. En gros, il vérifie si c'est bien la touche "Enter".
Bug : Sous Mozilla, la touche Retour arrière aura le même effet que l'Entree, et aussi les flèches directionnelles. Je suis en train de chercher une solution...
Pour qu'il tape le texte directement, cela s'appelle le focus.
document.formulaire.textarea.focus()
Attention, un textarea où tu interdis les retours à la ligne revient à un <input type="text"> ;
Voici deux codes, à adapter aux tiens.
Code pour IE uniquement
<html> <head> <script type="text/javascript"> function verifier(){ if(event.keyCode == 13){ // Si "Entrée" formulaire.submit(); // On envoi le formulaire } } </script> </head> <body onload="document.formulaire.texte.focus()"> <form name="formulaire"> <textarea name="texte" onkeypress="verifier()"></textarea> </form> </body> </html>
Code pour IE et FF
<html> <head> <script type="text/javascript"> function verifier(evt){ if( (event.keyCode && event.keyCode == 13) || (event.charCode || event.charCode ==0) ){ // Si "Entrée" formulaire.submit(); // On envoi le formulaire } } </script> </head> <body onload="document.formulaire.texte.focus()"> <form name="formulaire"> <textarea name="texte" onkeypress="verifier(event)"></textarea> </form> </body> </html>
Voila ;-)