html处理php返回的json数组的问题。

我想在html输入姓名和年龄,get到php,再分别返回姓名和年龄,json数据,问题是:我要html中的t1显示fname,t2显示tage。我的代码在html输出不了... 我想在html输入姓名和年龄,get到php,再分别返回姓名和年龄,json数据,问题是:我要html中的t1显示fname,t2显示tage。我的代码在html输出不了。
代码要怎么改?
别只给一个思路,我要具体代码?谢谢。
============
html
============
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script type="text/javascript">
var xmlHttp
function btn_click()
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("浏览器不支持HTTP请求。")
return
}
<!--声明值 -->
var name=document.getElementById("txtname").value;
var age=document.getElementById("txtage").value;
<!--发送数据 -->
var url="t22.php"
url=url+"?tname=" + name + "&tage=" + age
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}
<!--返回数据 -->
function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
console.log(xmlhttp.responseText);
var data=xmlhttp.responseText;
document.getElementById("t1").innerHTML=data[0];
document.getElementById("t2").innerHTML=data[1];

}
}
<!--处理浏览器兼容 -->
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
</script>
</head>

<body>

姓名:<input type="text" id="txtname" />
</br>
年龄:<input type="text" id="txtage" />
</br>
<input type="button" value="提交" id="btn" onClick="btn_click();" />

<p>姓名:<span id="t1"></span></p>
<p>年龄:<span id="t2"></span></p>

</body>
</html>
===========
php
===========
<?php

$fname=$_GET["tname"];
$fage=$_GET["tage"];
$data = [$fname,$fage];
echo json_encode($data);

?>
展开
 我来答
骨灰级理科生
2017-01-16 · 超过22用户采纳过TA的回答
知道答主
回答量:70
采纳率:0%
帮助的人:42.1万
展开全部

你的代码没太大问题, 只要改两个地方就可以了.

修改statechange函数, 里面的xmlhttp的 h改为大写 H, 还有返回的data要用JSON.parse转化成json对象就行了

更多追问追答
追问

改了,还是不行,我用  alert (xmlHttp.responseText)输出,是空,是不是php代码有问题。

如果发现问题,麻烦代码,只给一个思路,我怕我写不出。加分。

追答

我这里测试是没有问题的,若还是不行的话, 你把这个压缩包解压至同一个目录, 用http协议的方式运行html文件看看.


推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式