按钮提交后,刷新页面

时间:2018-09-29 07:59:48

标签: php wordpress

我正在使用wordpress version 4.9.8PHP 7.1.8

在下面您可以看到,我在帖子中添加了一个按钮。此按钮将内容插入到帖子的the_content字段中。提交按钮后,我想刷新单个帖子页面并显示内容。

在我的代码下面找到该按钮:

add_action('media_buttons', 'add_my_media_button', 99);
function add_my_media_button()
{

    $post = $GLOBALS['post_ID'];
    echo "<a href='#' id='insert-my-media' data-post-id='{$post}' class='button'>Own content</a>";

}

add_action('wp_ajax_updateContent', 'updateContent');
function updateContent()
{

    $post_id = intval($_POST['post_id']);

    try {
        $sp = new SinglePostContent();
        $sp->main($post_id);
    } catch (Exception $e) {
        echo $e;
    }
    wp_die(); // this is required to terminate immediately and return a proper response
}

add_action('admin_footer', 'my_media_button_script');

function my_media_button_script()
{

    ?>
    <script>
        jQuery(document).ready(function ($) {
            $('#insert-my-media').click(function () {
                var post_id = $(this).attr('data-post-id');
                var data = {
                    'action': 'updateContent',
                    'post_id': post_id
                };
                // since 2.8 ajaxurl is always defined in the admin header and points to admin-ajax.php
                jQuery.post(ajaxurl, data, function (response) {
                    console.log("test12")
                    console.log(response);
                });
            });
        });
    </script>

    <?php
}

关于如何刷新页面和显示内容的任何建议。

期待您的回复!

3 个答案:

答案 0 :(得分:1)

在回调函数中,重新加载页面:

jQuery.post(ajaxurl, data, function (response) {
    console.log("test12")
    console.log(response);
    location.reload();
});

答案 1 :(得分:1)

           jQuery.post(ajaxurl, data, function (response) {
                console.log("test12")
                console.log(response);
                location.reload(true);
            });

在重装中使用ture从服务器进行硬刷新重装。 或者您可以返回更新后的帖子内容,并使用html()来替换它而无需刷新。

答案 2 :(得分:1)

像这样更改代码:

is