我正在尝试从页面获取 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 何时找不到任何结果,并且首先 if(在 JavaScript 中)不为 TRUE(始终为 FALSE)。 当我的 php 代码在数据库中找不到任何结果时,如何在 JavaScript 中进行检测。
最佳答案
确保在 for
循环之前初始化 $arr = Array();
。
然后,PHP 脚本将返回 []
作为 JSON 对象,您可以在 JavaScript 中毫无问题地检测到该对象。
关于php - 在显示 HTML 之前检测搜索页面的 Ajax 请求何时返回 0 个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7639046/