php 我的WordPress AJAX 请求有什么问题

pkln4tw6  于 2023-02-03  发布在  PHP
关注(0)|答案(1)|浏览(180)

我想在我的WordPress Jmeter 板中添加一个使用 AJAX 的表单,但我的请求响应是400错误请求

add_action('admin_footer', 'vitrin_admin_ajax');
        function vitrin_admin_ajax() {
        ?>
            <script>
                (function($) {
                    $('.vitrin-private-message-form').submit(function(event) {
                        event.preventDefault();
                        jQuery.ajax({
                            url: '<?php echo admin_url('admin-ajax.php'); ?>',
                            type: 'post',
                            data: {
                                action: 'submit_vitrin_pm',
                                ppmcontent: jQuery('#pmcontent').val(),
                                ppmusers: jQuery('#pmusers').val(),
                            },
                            success: function(data) {
                                // jQuery('#datafetch').html(data);
                                alert(data)
                            }
                        });
                    })
                })(jQuery);
            </script>
        <?php
        }
        ?>

我还要补充一点:

add_action('wp_ajax_submit_vitrin_pm', 'submit_vitrin_pm');
add_action('wp_ajax_nopriv_submit_vitrin_pm', 'submit_vitrin_pm');

以及

function submit_vitrin_pm() {
    echo 'ssss';
    die();
}
ilmyapht

ilmyapht1#

我检查了,你的 AJAX 响应工作,你没有分享你的html表单,我添加了一个表单检查。

add_action('admin_footer', 'vitrin_admin_ajax');
function vitrin_admin_ajax() {
?>

      <form action="#" method="POST" class="vitrin-private-message-form">
        <div id="name-group" class="form-group">
          <label for="name">Name</label>
          <input
            type="text"
            class="form-control"
            id="pmcontent"
            name="name"
            placeholder="Full Name"
          />
        </div>

        <div id="email-group" class="form-group">
          <label for="email">Email</label>
          <input
            type="text"
            class="form-control"
            id="pmusers"
            name="email"
            placeholder="email@example.com"
          />
        </div>

        <button type="submit" class="btn btn-success">
          Submit
        </button>
      </form>
    <script>
        (function($) {
            $('.vitrin-private-message-form').submit(function(event) {
                event.preventDefault();
                console.log('working')
                jQuery.ajax({
                    url: '<?php echo admin_url('admin-ajax.php'); ?>',
                    type: 'post',
                    data: {
                        action: 'submit_vitrin_pm',
                        ppmcontent: jQuery('#pmcontent').val(),
                        ppmusers: jQuery('#pmusers').val(),
                    },
                    success: function(data) {
                        // jQuery('#datafetch').html(data);
                        alert(data)
                    }
                });
            })
        })(jQuery);
    </script>
<?php
}

add_action('wp_ajax_submit_vitrin_pm', 'submit_vitrin_pm');
add_action('wp_ajax_nopriv_submit_vitrin_pm', 'submit_vitrin_pm');

function submit_vitrin_pm() {
    echo 'ssss';
    die();
}

相关问题