簡體   English   中英

在函數內部獲取post變量

[英]Getting a post variable inside a function

我有一種情況,我想在函數內傳遞變量。 該代碼更加清晰:

<?php

$id=$_POST['id'];            

echo "
<script type=\"text/javascript\">
  $(document).ready(function(){
    function loadData(page){
      $.ajax({  
        type: \"POST\",
        url: \"loadSubscritor.php\",
        dataType: \"html\",
        data: ({  page:page }),
        success: function(msg) {
          $(\"#subscritor #container\").ajaxComplete(function(event, request, settings) {
            $(\"#subscritor #container\").html(msg);
          });
        },
        error: function(){
            alert('alertErr');
        }
      });
    }

    loadData(1);  // For first time page load default results
    $('#subscritor #container .pagination li.active').live('click',function() {
      var page = $(this).attr('p');
      loadData(page);
    });           

    $('#subscritor #go_bt').live('click',function() {
      var page = parseInt($('.goto').val());
      var no_of_pages = parseInt($('.total').attr('a'));
      if(page != 0 && page <= no_of_pages){
        loadData(page);
      }else{
        alert('Enter a PAGE between 1 and '+no_of_pages);
        $('.goto').val(\"\").focus();
        return false;
      }
    });
  }); 
</script>                 
<h3>Subscritor</h3>     

<div id=\"subscritor\">
  <div id=\"container\">
        <div class=\"pagination\"></div>
  </div> 
</div>"; 

?>

如代碼中所示,我想知道如何在loadData(page)函數內部傳遞$ id。 我從用ajax發出的發布請求中獲取了此變量,並且需要在函數內部使用它以將其傳遞給loadSubscritor.php

有什么想法嗎?

編輯1:我想我不是很清楚我想要什么,我想這樣做:function loadData(page){$ .ajax({
數據:({page:page id:$ id}),

提前致謝。

好吧,如果我了解您要實現的目標,則可以替換為:

$id=$_POST['id'];  

這樣 :

$id = isset($_POST['id']) ? $_POST['id'] : 1;

和這個 :

loadData(1);  // For first time page load default results

這樣 :

loadData($id);

為了說明,如果是第一次加載頁面,則$ id將設置為“ 1”。
否則,它將來自$ _POST ['id']。

在您的jquery代碼內,您可以按以下方式調用php變量

var current_page = "<?php echo $id; ?>" ;

您可以制作一個局部變量,並按如下所示輕松使用:

<?php

 $id=$_POST['id'];            


  echo " 


        <script type=\"text/javascript\">
        var id = \"".$id."\";
         $(document).ready(function(){
            function loadData(page){
                $.ajax
                ({  
                     type: \"POST\",
                    url: \"loadSubscritor.php\",
                                         dataType: \"html\",

                   data: ({  page:page
                             }),
                    success: function(msg)
                    {
                        $(\"#subscritor #container\").ajaxComplete(function(event, request, settings)
                        {
                            $(\"#subscritor #container\").html(msg);
                        });
                    },
                        error:
         function() 
         {               alert('alertErr');




        }



                });
            }
            loadData(1);  // For first time page load default results
            $('#subscritor #container .pagination li.active').live('click',function(){
                var page = $(this).attr('p');
                loadData(id);

            });           
            $('#subscritor #go_bt').live('click',function(){
                var page = parseInt($('.goto').val());
                var no_of_pages = parseInt($('.total').attr('a'));
                if(page != 0 && page <= no_of_pages){
                    loadData(id);
                }else{
                    alert('Enter a PAGE between 1 and '+no_of_pages);
                    $('.goto').val(\"\").focus();
                    return false;
                }

            });
        });    
   </script>                 
<h3>Subscritor</h3>     

<div id=\"subscritor\">
<div id=\"container\">
        <div class=\"pagination\"></div>
  </div> 
  </div>



                ";                                                                                                                                                                          
?>

暫無
暫無

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

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