Php 奇怪的jqueryajax问题
我使用jqueryajax从PHP页面获取一些数据,并在占位符中加载GIF图像,让用户知道结果正在进行中Php 奇怪的jqueryajax问题,php,jquery,ajax,post,preloader,Php,Jquery,Ajax,Post,Preloader,我使用jqueryajax从PHP页面获取一些数据,并在占位符中加载GIF图像,让用户知道结果正在进行中 $(".project").change(function(){ $(".custName").html("<img src='/admin/images/ajax-loader.gif' />"); $(".projectDesc").html("<img src='/admin/images/ajax-loader.gif
$(".project").change(function(){
$(".custName").html("<img src='/admin/images/ajax-loader.gif' />");
$(".projectDesc").html("<img src='/admin/images/ajax-loader.gif' />");
var project_num=$(this).val();
var dataString = 'project='+ project_num;
$.ajax
({
type: "POST",
url: "customerfilter.php",
dataType: "json",
data: dataString,
cache: false,
success: function(data)
{
$(".custName").html(data.message1);
$(".projectDesc").html(data.message2);
}
});
});
$result是一个mysql_查询我在将类型设置为JSON时遇到了类似的问题。如果PHP没有返回100%正确的JSON,那么jQuery将不会运行
success
函数
所以试试这个:
console.log(“success was called”)
语句放在success
方法中,以便您可以查看何时调用它JSON\u encode
函数,确保您的PHP代码正在创建正确的JSON我在将类型设置为JSON时遇到了类似的问题。如果PHP没有返回100%正确的JSON,那么jQuery将不会运行
success
函数
所以试试这个:
console.log(“success was called”)
语句放在success
方法中,以便您可以查看何时调用它JSON\u encode
函数,确保您的PHP代码正在创建正确的JSON该响应不是有效的json。试试这个:
$output = Array();
while ($row = mysql_fetch_array($result)) {
$output[] = Array(
"message1" => $row['cust_name'],
"message2" => $row['description'],
);
}
echo json_encode($output);
编辑:此外,您还必须更改“成功”javascript回调:
success: function(data) {
$(".custName, .projectDesc").empty();
for(var x in data) {
$(".custName").append(data[x].message1);
$(".projectDesc").append(data[x].message2);
}
}
该响应不是有效的json。试试这个:
$output = Array();
while ($row = mysql_fetch_array($result)) {
$output[] = Array(
"message1" => $row['cust_name'],
"message2" => $row['description'],
);
}
echo json_encode($output);
编辑:此外,您还必须更改“成功”javascript回调:
success: function(data) {
$(".custName, .projectDesc").empty();
for(var x in data) {
$(".custName").append(data[x].message1);
$(".projectDesc").append(data[x].message2);
}
}
向我们展示返回的数据以及可能生成它的php。检查“success”回调是否有效。例如,将console.log放入。当响应不是有效的json时,回调没有被正确调用。您是否使用了调试器单步执行“成功”回调?您的PHP返回
内容类型:application/json
头?如果您在success函数中执行了console.log(data)
,您是否会看到类似这样的内容:{message1:'asd',message2:'qwe'}
?该响应不是有效的json。请向我们显示返回的数据以及生成该数据的php。检查“success”回调是否有效。例如,将console.log放入。当响应不是有效的json时,回调没有被正确调用。您是否使用了调试器单步执行“成功”回调?您的PHP返回内容类型:application/json
头?如果您在success函数中执行了console.log(data)
,是否会看到类似这样的内容:{message1:'asd',message2:'qwe'}
?该响应不是有效的json。“success”回调现在运行?抱歉,因为您添加了jQuery…太棒了!非常感谢“成功”回调现在运行?抱歉,因为您添加了jQuery…太好了!非常感谢