Js中的eval函数
eval():将接受的字符串进行计算,返回值为计算的结果;
注意:{}当作参数传递后无法得到返回值
注意使用()构成表达式;
查询手册
转换接受数据为JSON对象
1、创建数据库db
2、创建数据表tb
3、Name字段
Age字段
Sex字段
4、记录
zhangsan 18 true
lisi 20 false
5、创建demo.php文件
6、连接db
select * from tb
json_encode()函数
string json_encode ( mixed $value )
保存到$obj;
echo $obj;
dbconn.php
<?php
mysql_connect("localhost","root","123");
mysql_select_db("db1");
mysql_query("set names utf8");
$josn="select * from josn";
$rs=mysql_query($josn);
$arr=array();
$ros=mysql_fetch_assoc($rs);
$arr[]=$ros;
echo json_encode($arr);
?>
ajax_json.js
//var xmlhttp;
//实现HTTP请求
function ajax_json_request(url){
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange=response;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
function response(){
if(xmlhttp.readyState == 4){
if(xmlhttp.status == 200){
//eval:转换字符串函数
// arr+=xmlhttp.responseText
eval("arr="+xmlhttp.responseText);
// alert("a");
var i = document.myform.myselect.selectedIndex;
//收集option中的内容:张三、李四
if(i == 0){
str = "please choose";
}
else{
str = "name:"+ arr[i-1].name;
str += "age:"+ arr[i-1].age;
}
document.getElementById("div").innerHTML = str;
}}}
//select选择框被选后触发到异步通信过程
document.myform.myselect.onchange = function start(){ajax_json_request("dbconn.php");}
index.html
<html>
<head>
<title>AJAX方式使用JSON</title>
</head>
<body>
<form name="myform">
<select name="myselect">
<option value="0">请选择</option>
<option value="1">张三</option>
<option value="2">李四</option>
</select>
</form>
<div id="div"></div>
<script type="text/javascript">
document.myform.myselect.onchange = function start(){
}
</script>
<script type="text/javascript" src="ajax_json.js"></script>
</body>
</html>
1732

被折叠的 条评论
为什么被折叠?



