簡體   English   中英

使用 PHP $_GET[''] 和 Ajax 傳遞 OnLoad 變量

[英]Passing Variables OnLoad using PHP $_GET[''] With Ajax

所以我有一個正在加載這個頁面的 HTML、PHP 和 ajax 應用程序:ViewOrderReports.php?order_number=77409362。 我試圖在加載時將 order_number 傳遞給 report_action.php。

在 ViewOrderReports.php?order_number=77409362 頁面上,我有以下代碼來獲取訂單號:

<?Php
  if(isset($_GET["order_number"]))
  {
       $order_number=addslashes(strip_tags($_GET["order_number"]));
       echo $order_number;
  }
?>
<div id="order_number" style="display: none;" value="<?php echo $order_number; ?>"></div>

然后在頁面中的 ajax javascript 部分我有這個代碼:

<script type="text/javascript">

  $(document).ready(function(){

  load_data();

  $('#action').val("Insert");

  function load_data(page)
 {
       var action = "Load";
       var order_number = $("#order_number").val();

  $.ajax({
    url:"phptables/report_action.php",
     method:"POST",
    data:{action:action, order_number:order_number, page:page},
    success:function(data)
  {
   $('#order_table').html(data);
  alert('Current Order Number' + order_number);
  }
   });
  }

 </script>

最后,接收訂單號的 PHP 如下。

<?Php

  if(isset($_POST["action"]) == "Load"&&isset($_POST["order_number"]))
  {

      echo "Do my actions";  

  }
?>

問題是訂單號沒有傳遞給接收 PHP。 我嘗試在發送頁面上的 ajax 代碼上進行調試,但似乎 $_GET 和 div 部分在 ajax onload 在 ViewOrderReports.php?order_number=77409362 上運行之前沒有完成加載。 希望你能幫忙。

解決了:

我所要做的就是用輸入替換 div 元素:

所以 :

<div id="order_number" style="display: none;" value="<?php echo $order_number; ?>"> 
</div>

變成:

<input id="order_number" type="hidden" value="<?php echo $order_number; ?>">

這解決了問題。

暫無
暫無

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

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