recherche

Maison  >  Questions et réponses  >  le corps du texte

WordPress - Exécuter la fonction onclick sur le bouton lors du chargement de la page

<p><strong>Arrière-plan</strong></p> <p>Je crée une page d'inscription et je souhaite exécuter une fonction lorsque l'utilisateur appuie sur le bouton "Créer un compte". J'ai un bouton comme ceci : </p> <pre class="brush:php;toolbar:false;"><button type="submit" name="wp-submit" onclick="register_process();" data-ppt-btn class ="mt-5"> <?php echo __("Créer un compte" ?> </bouton></pre> <p>Ensuite j'ai la fonction correspondante dans le même fichier PHP : </p> <pre class="brush:php;toolbar:false;">function register_process(){ // Vérifiez le type d'utilisateur dans la case à cocher if(!jQuery("#user_type").is(':checked')){ <?php // Entête $headers = "Version MIME : 1.0" . $headers = "Content-type:text/html;charset=UTF-8" . // Récupère l'e-mail de l'utilisateur $user_registration_email = "test987" //$_POST['user_email']; // Destinataires, objet et corps de l'email $admin_email_address = get_option('admin_email'); $email_subject = "Sujet du test"; $email_body = "E-mail : {$user_registration_email}" ; // envoyer un email wp_mail( $admin_email_address, $email_subject, $email_body, $headers); ?> } }</pré> <p><strong>Question</strong></p> <p>Il y a plusieurs problèmes, mais le premier est que la fonction "register_process" est en cours d'exécution lorsque je charge la page, sans même appuyer sur le bouton. J'ai lu quelque part que le () devait être supprimé de l'attribut onclick et cela a résolu le problème. Cependant, rien ne se passe lorsque vous appuyez sur le bouton. </p> <p>J'ai également essayé de vérifier si le champ de courrier électronique de l'utilisateur est vide et d'envoyer l'e-mail uniquement s'il est vide. Cependant, de cette façon, je ne reçois aucun e-mail. </p> <p>Curieusement, j'ai quelques autres choses dans ma fonction, comme vérifier si le champ de saisie est vide. Ces erreurs/avertissements ne se déclenchent que lorsque le bouton est enfoncé et ressemblent à ceci : </p> <pre class="brush:php;toolbar:false;">if(!jQuery("#privacypolicy").is(':checked')){ jQuery("#ppt-form-error").addClass('text-danger mb-4').html("<?php echo __("Vous devez accepter notre politique de confidentialité pour rejoindre notre site ." ;) ?> ); PeutContinuer =0 ; retour; }</pré> <p>Comment puis-je faire en sorte que la fonction envoie l'e-mail uniquement lorsque le bouton est enfoncé ? </p>
P粉575055974P粉575055974483 Il y a quelques jours648

répondre à tous(1)je répondrai

  • P粉212114661

    P粉2121146612023-08-30 09:29:02

    Onclick="register_process();" il suffit de supprimer "();"

    répondre
    0
  • Annulerrépondre