我试图从page.I获得JSON代码中使用此检测时,Ajax请求的搜索页面返回0结果显示HTML
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中检测到这些数据。
如果页面没有回显任何内容,那么您不能只检查'data'变量是否为空? – sdleihssirhc
您正在检查JavaScript变量'arr'中的某些内容,它与您的PHP变量'arr'不同。您将在JavaScript变量'data'中找到您的数据(当由PHP返回时)。那么你也应该初始化所有的变量,而不是依靠PHP的猜测。 –