我在父文档中有变量,例如。
$var = 'blah';
然后使用 Jquery AJAX 调用填充 div 并且该文件具有该行。
<?php echo $var; ?>
目前我得到
Notice: Undefined variable:
我该如何解决这个问题。
通过您的 jQuery AJAX 请求请求的页面无法访问父页面上定义的变量,因为 AJAX 请求会创建一个单独的 HTTP 请求,这意味着该页面没有指向您的父页面的链接,并且将无法访问中定义的任何内容它。
您可以尝试$var
通过jQuery AJAXdata
函数的参数发送值,或者,只需在您通过 AJAX 请求的页面上重新填充。$var
您的 $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;
?>
由于 JavaScript (jQuery) 纯粹在客户端执行,并且 AJAX 调用只是一个单独的页面请求,因此调用脚本无法知道“父”请求。我建议您$var
通过 GET 或 POST 将其传递给脚本。