簡體   English   中英

使用JavaScript將php變量從一頁發布到另一頁

[英]Posting a php variable from one page to another using javascript

我正在嘗試使用JS將php變量發送到另一個頁面。 到目前為止我絕望的嘗試:

header.php文件:

<script>
    var county = "<?php echo $county; ?>";
    $.post("ajax.php",county);
</script>

ajax.php:

<?php
  $county = $_POST['county'];
  echo $county;
?>

對於上下文,我正在嘗試優化無限滾動腳本( http://www.inserthtml.com/2013/01/scroll-pagination/ )。

我當前正在使用此腳本,並想添加到它:

(function($) {

    $.fn.scrollPagination = function(options) {

        var settings = { 
            nop     : 10, // The number of posts per scroll to be loaded
            offset  : 0, // Initial offset, begins at 0 in this case
            error   : 'No More Posts!', // When the user reaches the end this is the message that is
                                        // displayed. You can change this if you want.
            delay   : 500, // When you scroll down the posts will load after a delayed amount of time.
                           // This is mainly for usability concerns. You can alter this as you see fit
            scroll  : true // The main bit, if set to false posts will not load as the user scrolls. 
                           // but will still load if the user clicks.

        }



        // Extend the options so they work with the plugin
        if(options) {
            $.extend(settings, options);
        }

        // For each so that we keep chainability.
        return this.each(function() {       

            // Some variables 
            $this = $(this);
            $settings = settings;
            var offset = $settings.offset;
            var busy = false; // Checks if the scroll action is happening 
                              // so we don't run it multiple times

            // Custom messages based on settings
            if($settings.scroll == true) $initmessage = '';
            else $initmessage = 'Click for more';

            // Append custom messages and extra UI
            $this.append('<div class="content"></div><div class="loading-bar">'+$initmessage+'</div>');

            function getData() {

                // Post data to ajax.php
                $.post('ajax.php', {

                    action        : 'scrollpagination',
                    number        : $settings.nop,
                    offset        : offset,



                }, function(data) {

                    // Change loading bar content (it may have been altered)
                    $this.find('.loading-bar').html($initmessage);

                    // If there is no data returned, there are no more posts to be shown. Show error
                    if(data == "") { 
                        $this.find('.loading-bar').html($settings.error);   
                    }
                    else {

                        // Offset increases
                        offset = offset+$settings.nop; 

                        // Append the data to the content div
                        $this.find('.content').append(data);

                        // No longer busy!  
                        busy = false;
                    }   

                });

            }   

            getData(); // Run function initially

            // If scrolling is enabled
            if($settings.scroll == true) {
                // .. and the user is scrolling
                $(window).scroll(function() {

                    // Check the user is at the bottom of the element
                    if($(window).scrollTop() + $(window).height() > $this.height() && !busy) {

                        // Now we are working, so busy is true
                        busy = true;

                        // Tell the user we're loading posts
                        $this.find('.loading-bar').html('Loading images');

                        // Run the function to fetch the data inside a delay
                        // This is useful if you have content in a footer you
                        // want the user to see.
                        setTimeout(function() {

                            getData();

                        }, $settings.delay);

                    }   
                });
            }

            // Also content can be loaded by clicking the loading bar/
            $this.find('.loading-bar').click(function() {

                if(busy == false) {
                    busy = true;
                    getData();
                }

            });

        });
    }

})(jQuery);
var county = "<?php echo $county; ?>";
$.ajax({
     type: "POST",
        url: "ajax.php",
        data: {county:county},
        success: function (data)
        {
           alert(data);
        }
    });   

更新:

現在正在工作。 謝謝你的幫助。

嘗試這個:

$.post("ajax.php", { county: county }, function(result){
    console.log(result);  // response, if any
});
var county = "<?php echo $county; ?>";
$.ajax({
     type: "POST",
        url: "ajax.php",
        data: {county:county},
        success: function (data)
        {
           alert(data);
        }
    });   

請使用此代碼它將起作用

請提供一些細節,您到底想做什么

或最簡單的方法,可以使用ajax jQuery進行插件

$('#myForm').ajaxForm(function(response){
   //Print response
   $('#ResultDiv').html(response);
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM