[英]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.