如何使用javascript从php脚本交互获取数据
How to interactively get data from php script using javascript
我有这个php脚本:
<?php
$arr = array(array("a","b"),array("c","d"));
qq($arr);
function qq($arr){
foreach($arr as $ar => $r){
//getting some work done
//sending the array $r (or values)to javascript
}
}
?>
是否可以在数组1之前使用javascript获取数组0的值
我目前得到的是这个js从stackoverflow:
<script type="text/javascript">
function q(){
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "http://127.0.0.0.1/q.php");
xmlhttp.send(null);
xmlhttp.onreadystatechange = callbackFunction;
function callbackFunction(){
if (xmlhttp.readyState == 4){
xml = xmlhttp.responseText;
document.getElementById("q").value = xml;
}}}
</script>
但它没有做我想要的(我想我错过了什么)。
我的html:
<input type="submit" onclick="q();" />
<div id="q"></div>
<div id="q1"></div>
是否可以把数组0的值在div(id=q),当数组1准备好了,把它的值在div(id=q1)
通过XMLHttpRequest()的"正常" HTTP请求不允许在单个请求中出现这种行为。
您可以使用以下选项:
服务器发送事件
上行- 它们非常容易构建。服务器上不需要任何特别的东西。只需谷歌服务器发送的事件,你会发现一些例子,他们是如何工作的。
- 它们像任何其他http请求一样通过代理和防火墙,因为它是一个正常的http请求。
- 不能在Internet Explorer上运行(?) 如果某个代理缓存太多,
- 可能无法实时更新。然而,在这种情况下,它仍然工作,它只是错过了实时通信
Websockets
上行适用于所有最新的浏览器。使您能够进行全双工通信,并使您需要的一切正确。
缺点- 可能通过代理工作,也可能不通过代理工作,这取决于它们的配置。
- 服务器上需要特殊扩展
(长)轮询
上行- 最佳兼容性(即使在旧浏览器中也能工作,没有代理或防火墙问题)
- 创建大量开销,因为它为每个消息创建一个新的http连接 你需要在某个地方存储中间结果,因为轮询请求来自不同的线程,而不是代码生成机制。
你能不能试试
if (xmlhttp.readyState == 4){
xml = xmlhttp.responseText;
document.getElementById('q').innerHTML=xml;
}}}
相关文章:
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- jquery试图按名称获取按钮位置
- 如何在jQuery中获取元素的形式
- 如何在php文件中获取$.post-ajax传递的值
- 在Shopify中获取博客文章的图片
- 使用Javascript获取所选选项ID
- 在jQuery中获取表的行索引
- 使用jquery将mysql数据获取到新的表行中
- 在动态创建的元素上获取对特定选择器的引用
- 从城市名称获取惊喜
- Angular只从数组中获取所需的数据
- 无法将数据从firebase获取到我的html页面
- 从ajax请求中获取javascript对象
- 如何从画布上的某个移动事件中获取X和Y
- 与iframe交互-获取选定的HTML
- 当用户与谷歌地图交互时,如何从中获取信息
- 如何让ajax与数据库交互,以便发布、获取和删除
- 无法获取interact.js拖动&放弃交互以使用Boostrap元素
- OpenLayers 3 在选择交互时获取鼠标坐标
- 如何使用javascript从php脚本交互获取数据