Voici mon formulaire et la méthode onClick. Je voudrais exécuter cette méthode lorsque le bouton Entrée du clavier est enfoncé. Comment ?
NB: aucune requête n'est appréciée.
comment: function (e) {
e.preventDefault();
this.props.comment({comment: this.refs.text.getDOMNode().value, userPostId:this.refs.userPostId.getDOMNode().value})
},
<form className="commentForm">
<textarea rows="2" cols="110" placeholder="****Comment Here****" ref="text" /><br />
<input type="text" placeholder="userPostId" ref="userPostId" /> <br />
<button type="button" className="btn btn-success" onClick={this.comment}>Comment</button>
</form>
reactjs
reactjs-flux
Istiak Morsalin
la source
la source
onCommentSubmit
, vous devez également appelerevent.preventDefault()
etevent.stopPropagation()
empêcher le formulaire de recharger la page (car c'est un formulaire avec unaction
attribut vide très probablement)action='#'
attribut à l'form
élément.Utilisez l'
keydown
événement pour le faire:la source
Cela fait plusieurs années que cette question n'a pas reçu de réponse. React a introduit "Hooks" en 2017, et "keyCode" est devenu obsolète.
Maintenant, nous pouvons écrire ceci:
Cela enregistre un écouteur sur l'
keydown
événement, lorsque le composant est chargé pour la première fois. Il supprime l'écouteur d'événements lorsque le composant est détruit.la source
voici comment procéder si vous souhaitez écouter la touche "Entrée". Il existe un accessoire onKeydown que vous pouvez utiliser et que vous pouvez lire à ce sujet dans react doc
et voici un code
la source