Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript在后台加载php,而不是传递变量_Javascript_Php - Fatal编程技术网

使用javascript在后台加载php,而不是传递变量

使用javascript在后台加载php,而不是传递变量,javascript,php,Javascript,Php,我正在使用此函数在后台加载一个php文件: <div id="content1"></div> <script type="text/javascript"> <!-- $("#content1").load("/bm_products_filter.php"); //--> </script> 原始php代码如下所示: <?php require('/bm_products_filter.php'); ?>

我正在使用此函数在后台加载一个php文件:

<div id="content1"></div>

<script type="text/javascript">
<!--

$("#content1").load("/bm_products_filter.php");
//-->
</script>
原始php代码如下所示:

<?php require('/bm_products_filter.php');  
   ?>

使用原始代码,页面工作正常,使用java代码,页面会出现错误。这是因为php不使用当前页面中的变量。我知道如何将变量传递给外部php,但有没有一种方法可以让它使用当前页面上的所有变量?

我不确定我是否搞错了,但您不能用JavaScript或JQuery加载php文件

JavaScript是客户端的,如果您想在没有PHP的情况下构建/构建模板的某个时间点加载一些数据,则无法访问服务器。您必须使用Ajax请求,这对于JQuery来说也非常简单

请查收:


如果您可以重写bm_products_filter.php以返回JSON输出,那么您可以使用下面的函数来获取从php返回的值。 我在下面使用的jsonKey1是从php返回的JSON键之一

function getToken() {
  var requestStr = "./bm_products_filter.php";
    $.ajax({
    url: requestStr,
    type: "GET",
    cache: true,
    dataType: 'json',
    success: function (data) {
      bmProductsData = data.jsonKey1;
    }
  });
}

希望这有帮助。

您需要重写整个bm\u products\u filter.php脚本。。javascript以另一种方式工作。没有办法以php方式包含页面。在筛选/显示产品时,您现在应该看看ajax xhr2。并使用它从php脚本更新产品。或者使用JSON传递数据。抱歉,我从未见过/使用过它。如果这是一个用于Ajax请求的宏,那么请忘记我说的抱歉。@givi我正在使用load,但问题是它没有使用当前页面中的当前变量,上面的代码只是products_filter.php的一部分