WordPress - 执行按钮上的onclick函数,当页面加载时
P粉575055974
P粉575055974 2023-08-30 00:33:02
[PHP讨论组]

背景

我正在创建一个注册页面,并希望在用户按下“创建账户”按钮时运行一个函数。我有一个如下的按钮:

<button type="submit" name="wp-submit" onclick="register_process();" data-ppt-btn class="mt-5">
<?php echo __("创建账户"); ?>
</button>

然后我在同一个PHP文件中有相应的函数:

function register_process(){

    // 检查复选框中的用户类型
    if(!jQuery("#user_type").is(':checked')){
     
        <?php
        
        // 标头
        $headers = "MIME-Version: 1.0" . "\r\n";
        $headers = "Content-type:text/html;charset=UTF-8" . "\r\n";

        // 获取用户电子邮件
        $user_registration_email = "test987"; //$_POST['user_email'];

        // 邮件的收件人、主题和正文
        $admin_email_address = get_option('admin_email');
        $email_subject = "测试标题";
        $email_body = "电子邮件:{$user_registration_email}";  

        // 发送邮件
        wp_mail( $admin_email_address, $email_subject, $email_body, $headers);
        ?>
    }
}

问题

有多个问题,但首先是函数“register_process”在我加载页面时就运行了,甚至没有按下按钮。我在一些地方读到应该从onclick属性中删除(),这解决了这个问题。然而,按下按钮后什么也不会发生。

我还尝试检查用户电子邮件字段是否为空,只有在为空时才发送电子邮件。然而,这样我根本收不到任何邮件。

奇怪的是,我的函数中还有其他的一些东西,比如检查输入字段是否为空。这些错误/警告只有在按下按钮时才会触发,它们看起来像这样:

if(!jQuery("#privacypolicy").is(':checked')){
        jQuery("#ppt-form-error").addClass('text-danger mb-4').html("<?php echo __("您必须接受我们的隐私政策才能加入我们的网站。") ?>");
        CanContinue =0;
        return;
    }

如何使函数只在按下按钮时发送邮件?

P粉575055974
P粉575055974

全部回复(1)
P粉212114661

在onclick="register_process();"中只需要移除"();"

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号