javascript - 将变量从 PHP 发送到 Javascript

标签 javascript php

我知道我以前问过这个问题,但我无法理解我得到的答案。我在两个单独的文件中有以下代码,其中一个是 javascript,另一个是 php:

Javascript

  xmlhttp=new XMLHttpRequest();
  xmlhttp.onreadystatechange=function() {
    if (this.readyState==4 && this.status==200) {
       document.getElementById("dummy").innerHTML=this.responseText;
    }
  }
  xmlhttp.open("GET","getgames.php?yearFilter="+yearFilter,true);
  xmlhttp.send(null);

php

$yearFilter = (int)$_REQUEST["yearFilter"];
$dummyvariable = 123245;

我一直在使用 javascript 文件将变量传递给 php,但我不知道如何将变量(例如虚拟变量示例)从 php 发送回 javascript 文件。我知道结果应该以“this.responseText”结束,但我不知道在 php 文件中放入什么代码才能将其发送到那里。我一直被告知要将变量“回显”到 javascript,但每当我尝试时,我所看到的只是将变量打印到屏幕上,我没有看到任何证据表明它存储在 javascript 中。我错过了什么?

最佳答案

你可以像这样简单地输出变量值

$dummyvariable = 123245;
echo $dummyvariable;

现在在 JavaScript 中

document.getElementById("dummy").innerHTML=this.responseText;

此行会将 123245 添加到#dummy id

如果您想将多个变量值发送到 JavaScript,只需使用 json 进行响应

就这样

$dummyArray = json_encode(array("var1"=>"x1","var2"=>"x2"));
echo $dummyArray;

现在在 javascript 中使用此行代码

var response = JSON.parse(this.responseText);

在这种情况下,现在响应包含 var1 和 var2 的值... 下面是如何使用

alert(response.var1); // this will return x1;
alert(response.var2); // this will return x2;

关于javascript - 将变量从 PHP 发送到 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32099547/

相关文章:

javascript - VueJS 和 Laravel,当用户离开屏幕时执行发布请求

javascript - 如何在 Android 移动设备上运行通用 Windows 平台桌面应用程序?

javascript - 如何在html中显示表单中的元素

javascript - 缩放 Canvas 上的鼠标位置

php - CDash - 安装,按照文档操作后我无法在 CDash/install.php 中注册

javascript - 等待 RootCtrl Angular $http 中的 promise

php - Google 计算引擎 - Ubuntu - 关闭 - Cloud SQL 代理连接关闭

php - 我希望页面在到达页面底部时自动包含更多帖子

php - 如何在 propel 中从多对多关系中检索行?

php - Laravel 5.2 只允许某些 ip 地址注册用户