$.jquery ajax返回数据(json)显示为';未定义';
这里我有一个简单的php脚本,它以json格式显示数据库中的一些值$.jquery ajax返回数据(json)显示为';未定义';,jquery,ajax,json,Jquery,Ajax,Json,这里我有一个简单的php脚本,它以json格式显示数据库中的一些值 $source = $_GET['source']; $query = mysql_query("SELECT * FROM images WHERE big_thumb = '" . $source . "'"); $results = array(); while($row = mysql_fetch_array($query)) { $results[] = array( 'title' =>
$source = $_GET['source'];
$query = mysql_query("SELECT * FROM images WHERE big_thumb = '" . $source . "'");
$results = array();
while($row = mysql_fetch_array($query))
{
$results[] = array(
'title' => $row['title'],
'date' => $row['upload_date'],
'time' => $row['upload_time']
);
}
$json = json_encode($results);
echo $json;
这将显示fine,下面是一个输出示例:
[{"title":"Torus","date":"2012-04-04","time":"23:06:14"}]
然后,单击图像时,调用此jquery:
var image_src = $(this).attr("alt"); // <= This works fine
$.ajax({
url: 'inc/get_image_details.php',
data: {source : image_src},
dataType: "json",
success: function(data)
{
title = data.title;
alert(title);
date = data.date;
alert(date);
time = data.time;
alert(time);
}
});
var image_src=$(this.attr(“alt”);// json字符串具有数组格式。您需要像这样访问json对象属性
title = data[0].title;
alert(title);
date = data[0].date;
alert(date);
time = data[0].time;
alert(time);
如果您控制json格式,并且不需要数组,请使用具有此格式的json对象
{"title":"Torus","date":"2012-04-04","time":"23:06:14"}
在这种情况下,您可以保持代码的原样。您是否为PHP脚本使用了正确的标题<代码>标题('Content-Type:application/json')代码>