简体   繁体   English

我的Wordpress ajax请求有什么问题

[英]What's the problem with my Wordpress ajax request

I want to add have a form in my Wordpress dashboard that work with ajax but my request response is 400 Bad request我想在我的 Wordpress 仪表板中添加一个与 ajax 一起使用的表单,但我的请求响应是 400 Bad request

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
        }
        ?>

I also add:我还补充说:

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

and

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

I checked, your ajax response is working, you didn't share your html form, i added a form for check.我检查过,您的 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();
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM