搜尋

首頁  >  問答  >  主體

WordPress - 執行按鈕上的onclick函數,當頁面載入時

<p><strong>背景</strong></p> <p>我正在建立一個註冊頁面,並希望在使用者按下「建立帳戶」按鈕時執行一個函數。我有一個如下的按鈕:</p> <pre class="brush:php;toolbar:false;"><button type="submit" name="wp-submit" onclick="register_process();" data-ppt-btn class-ppt-btn class-ppt-btn class-ppt-btn class-ppt-b ="mt-5"> <?php echo __("建立帳號"); ?> </button></pre> <p>然後我在同一個PHP檔案中有對應的函數:</p> <pre class="brush:php;toolbar:false;">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); ?> } }</pre> <p><strong>問題</strong></p> <p>有多個問題,但首先是函數「register_process」在我載入頁面時就運行了,甚至沒有按下按鈕。我在一些地方讀到應該從onclick屬性中刪除(),這解決了這個問題。然而,按下按鈕後什麼事也不會發生。 </p> <p>我還嘗試檢查用戶電子郵件欄位是否為空,只有在為空時才發送電子郵件。然而,這樣我根本收不到任何郵件。 </p> <p>奇怪的是,我的函數中還有其他的東西,例如檢查輸入欄位是否為空。這些錯誤/警告只有在按下按鈕時才會觸發,它們看起來像這樣:</p> <pre class="brush:php;toolbar:false;">if(!jQuery("#privacypolicy").is(':checked')){ jQuery("#ppt-form-error").addClass('text-danger mb-4').html("<?php echo __("您必須接受我們的隱私權政策才能加入我們的網站.") ?>"); CanContinue =0; return; }</pre> <p>如何讓函數只在按下按鈕時才發送郵件? </p>
P粉575055974P粉575055974441 天前603

全部回覆(1)我來回復

  • P粉212114661

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

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

    回覆
    0
  • 取消回覆