我正在尝试从页面获取json代码。我使用此
private function __ajax_admin_search($username = '')
{
$result = $this->admin_login->Admin_Username_Ajax($username);
$count = count($result);
for ($i = 0;$i < $count;$i++)
$arr[$i] = $result[$i]->username;
echo (json_encode($arr));
}
尝试通过jQuery和JavaScript显示它
$("#AdminSearch").bind("change keyup", function() {
var url = "http://localhost/PmMusic/index.php/admin/ajax/admin_search/"+$("#AdminSearch").val();
$.getJSON(url,function(data){
if (data.length == 0) // or arr == null
{
$("#AutoSearch").hide(1000);
}
else
{
$("#AutoSearch").show(1000);
}
});
});
现在我的问题是,我无法检测到__ajax_admin_search何时找不到任何结果,如果(在JavaScript中)不是TRUE(总是它为FALSE)。 当我的php代码在数据库中找不到任何结果时,如何在JavaScript中检测到。
答案 0 :(得分:4)
确保在$arr = Array();
循环之前初始化for
。
然后,PHP脚本将返回[]
作为JSON对象,您可以在JavaScript中检测到它而没有问题。
答案 1 :(得分:-1)
请注意,您必须设置正确的mime类型。你的javascript期待json所以你需要在php中设置标题。 JSON文本的MIME媒体类型是application / json ...
header("Content-type: application/json");