将 PHP url 添加到 AJAX 请求仅适用于 WordPress 文件夹之外

问题描述 投票:0回答:1

我试图在我的ajax请求中添加一个php url,但它不起作用。

代码:

这可行(但这不是我的想法)。它适用于 public_html 文件夹内的文件。

场景一:

当我将正确的 url 添加到添加 php 文件的位置时,它不起作用并且分页停止。

<script>
     // Home Pagination
    $(document).ready(function () {
        // Initialize with the current page
        var currentPage = <?php echo $current_page; ?>;
        
        
        // Load matches for the initial page
        loadMatches(currentPage);

        $('.pagination-link').click(function (e) {
            e.preventDefault();
            var page = $(this).data('page');
            loadMatches(page);
        });

        // Toggle the visibility of tables when a button is clicked
        $('.toggle-table').click(function () {
            $(this).next('.match-table').toggle(); // Toggle the associated table
        });

        function loadMatches(page) {
            $.ajax({
                type: 'GET',
                url: 'wp-content/plugins/matches/ajax-matches.php',
                data: { page: page }, // Send the page parameter
                success: function (data) {
                    $('#matches-container').html(data);
                },
                error: function () {
                    alert('Error loading matches.');
                }
            });
        }
    });

</script>

场景2:

<script>
     // Home Pagination
    $(document).ready(function () {
        // Initialize with the current page
        var currentPage = <?php echo $current_page; ?>;
        
        
        // Load matches for the initial page
        loadMatches(currentPage);

        $('.pagination-link').click(function (e) {
            e.preventDefault();
            var page = $(this).data('page');
            loadMatches(page);
        });

        // Toggle the visibility of tables when a button is clicked
        $('.toggle-table').click(function () {
            $(this).next('.match-table').toggle(); // Toggle the associated table
        });

        function loadMatches(page) {
            $.ajax({
                type: 'GET',
                url: 'ajax-matches.php',
                data: { page: page }, // Send the page parameter
                success: function (data) {
                    $('#matches-container').html(data);
                },
                error: function () {
                    alert('Error loading matches.');
                }
            });
        }
    });

</script>

我已经尝试过很多次了。我尝试过但没有成功的一些方法: 添加变量

var ajax_target = "<?php echo plugins_url('/matches/ajax-matches.php', __FILE__); ?>";

您的帮助将会大有帮助!

php jquery ajax
1个回答
0
投票

尝试添加 / 或使用完整的 URL,如下所示:

url: '/wp-content/plugins/matches/ajax-matches.php'

或者这个:

url: 'https://example.com/wp-content/plugins/matches/ajax-matches.php',

我无法发送评论(没有足够的声誉),这个答案可能会导致我受到惩罚,但仍然很乐意提供帮助!

© www.soinside.com 2019 - 2024. All rights reserved.