Voici mon code html:
const displayExtraUserInfo = (userInfo) => {
const btn = () => {
document.querySelector('btn-birthdate').onclick = displayBirthdate(UserInfo);
}
}
Ceci est mon code javascript
<button id ="btn-birthdate" class = "mdc-icon-button material-icons" >
<i class="material-icons" >stop</i>
</button>
Mais je continue de recevoir le message
Vous n'avez pas créé l'écouteur
onclickpour lebtn-birthdatecomme spécifié
... quand je cours dans Sapio
Question que j'essaie de résoudre
Créez une fonction de flèche
displayExtraUserInfo. Il ne devrait prendre qu'un seul paramètre. Il devrait alors:Ajoutez un écouteur de clics de fonction de flèche en ligne au BOUTON avec l'ID de
btn-birthdate. L'auditeur doit appelerdisplayBirthdateet transmettre le paramètredisplayExtraUserInforeçu
3 Réponses :
Dans l'affectation onclick , vous exécutez displayBirthdate immédiatement, au lieu d'attribuer une fonction.
Alors changez
const displayExtraUserInfo = (userInfo) => {
document.querySelector('button#btn-birthdate').onclick = () => displayBirthdate(userInfo);
}
to:
const displayExtraUserInfo = (userInfo) => {
document.querySelector('#btn-birthdate').onclick = () => displayBirthdate(userInfo);
}
Par contre, vous n'appelez jamais la fonction btn après l'avoir définie . Ajoutez un appel btn () ou ne définissez pas du tout cette fonction et exécutez simplement son code en ligne.
Il y a aussi un problème avec le sélecteur. Vous sélectionnez un élément dont le nom de balise est btn-birthdate , mais vous devez sélectionner par l'ID. #btn-birthdate.
Et il y a encore une autre erreur: l'orthographe de userInfo doit être cohérente, sinon vous avez affaire à une autre variable.
La solution finale serait donc:
.onclick = () => displayBirthdate(UserInfo)
Enfin, la question dit que vous cherchez un bouton. Bien qu'un identifiant d'élément soit censé être unique, vous pouvez ajouter le bouton dans le sélecteur:
.onclick = displayBirthdate(UserInfo)
Je l'ai fait mais je reçois toujours le message d'erreur lors de l'exécution dans Sapio
Je l'ai fait mais je reçois toujours le message d'erreur lors de l'exécution dans Sapio
Quel est le message d'erreur? Avez-vous appelé btn ? Sinon, voir l'ajout à ma réponse.
Vous n'avez pas créé l'écouteur onclick pour le bouton btn-birthdate comme spécifié
Voir plus à ma réponse.
J'ai d'abord fait ça comme ça, mais je vais essayer à nouveau
peut-être devriez-vous m'aider à lire la question, peut-être qu'il me manque quelque chose ........ ** Créer une fonction de flèche displayExtraUserInfo. Il ne devrait prendre qu'un seul paramètre. Il devrait alors: Ajouter un écouteur de clic de fonction de flèche en ligne au BOUTON avec l'ID de btn-birthdate. L'auditeur doit appeler displayBirthdate et transmettre le paramètre displayExtraUserInfo reçu **
Vous avez trouvé quelques problèmes supplémentaires dans votre code. Veuillez consulter la mise à jour.
La méthode querySelector utilise le formatage du sélecteur CSS, donc querySelector ('btn-birthdate') ne trouvera rien. Vous avez besoin de querySelector ('# btn-birthdate') pour cibler l'ID "btn-birthdate".
Vous pouvez également utiliser document.getElementById("btn-birthdate")
avez déjà fait cela ........................ peut-être que vous devriez m'aider à lire la question, peut-être que je manque quelque chose ....... . * Créez une fonction de flèche displayExtraUserInfo. Il ne devrait prendre qu'un seul paramètre. Il devrait alors: Ajouter un écouteur de clic de fonction de flèche en ligne au BOUTON avec l'ID de btn-birthdate. L'auditeur doit appeler displayBirthdate et transmettre le paramètre displayExtraUserInfo reçu *
Cela fonctionne pour moi
const displayExtraUserInfo = (userInfo) => {
document.getElementById('btn-birthdate').addEventListener('click',()=>{
displayBirthdate(userInfo)
} );