2

我在父文档中有变量,例如。

$var = 'blah';

然后使用 Jquery AJAX 调用填充 div 并且该文件具有该行。

<?php echo $var; ?>

目前我得到

Notice: Undefined variable:

我该如何解决这个问题。

4

3 回答 3

2

通过您的 jQuery AJAX 请求请求的页面无法访问父页面上定义的变量,因为 AJAX 请求会创建一个单独的 HTTP 请求,这意味着该页面没有指向您的父页面的链接,并且将无法访问中定义的任何内容它。

您可以尝试$var通过jQuery AJAXdata函数的参数发送值,或者,只需在您通过 AJAX 请求的页面上重新填充。$var

于 2012-06-22T20:54:56.210 回答
2

您的 $var 是否与 jQuery 在同一个 php 中?您需要从初始化它的 php 文件中回显 $var。

例如:

一个.php

<!DOCTYPE html>
<html>
    <head>
        <script type="text/javascript" src="jquery.js"></script>
        <script type="text/javascript">
            $(document).ready(function() {
                $.ajax({
                    url : "B.php",
                    success : function(out) {
                        $('#out').html(out);
                    }
                });
            });
        </script>
    </head>
    <body>
        <div id="out">
        </div>
    </body>
</html>

B.php

<?php
  $var = "foo";
  echo $var;
?>
于 2012-06-22T21:02:41.313 回答
1

由于 JavaScript (jQuery) 纯粹在客户端执行,并且 AJAX 调用只是一个单独的页面请求,因此调用脚本无法知道“父”请求。我建议您$var通过 GET 或 POST 将其传递给脚本。

于 2012-06-22T20:55:36.900 回答