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">
function btn_click()
{
xmlhttp=new XMLHttpRequest();
var name=document.getElementById("txtname").value;
var age=document.getElementById("txtage").value;
//发送
xmlhttp.open("GET","t22.php?tname=" + name + "&tage=" + age,true);
xmlhttp.send();
//返回
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("t1").innerHTML=xmlhttp.responseText;
document.getElementById("t2").innerHTML=xmlhttp.responseText;
}
}
}
</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);
?> 展开
html的代码要怎么改?
别只给一个思路,我要具体代码?谢谢。
=============================
html:
=============================
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script type="text/javascript">
function btn_click()
{
xmlhttp=new XMLHttpRequest();
var name=document.getElementById("txtname").value;
var age=document.getElementById("txtage").value;
//发送
xmlhttp.open("GET","t22.php?tname=" + name + "&tage=" + age,true);
xmlhttp.send();
//返回
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("t1").innerHTML=xmlhttp.responseText;
document.getElementById("t2").innerHTML=xmlhttp.responseText;
}
}
}
</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);
?> 展开
2个回答
展开全部
document.getElementById("t1").innerHTML=xmlhttp.responseText;
document.getElementById("t2").innerHTML=xmlhttp.responseText;
这个地方错了,
最好在前面加上一行:
console.log(xmlhttp.responseText);
看一下返回的数据。
应该返回的是一个数据。
你可以这样写:
console.log(xmlhttp.responseText);
var data=xmlhttp.responseText;
document.getElementById("t1").innerHTML=data[0];document.getElementById("t2").innerHTML=data[1];
展开全部
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
var rs_arr= eval('(' + xmlhttp.responseText + ')'); //这里转为json 对象
document.getElementById("t1").innerHTML=rs_arr.name; //这里取出对象的值 name
document.getElementById("t2").innerHTML=rs_arr.age; //这里取出对象的值 age
}
}
}
php
<?
$fname=$_GET["tname"];
$fage=$_GET["tage"];
$data = ["name"=>$fname,'age'=>$fage]; //json 数组 用索引数组
echo json_encode($data);
?>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询