我有一个奇怪的问题,我以前从未遇到过。
我有一个关于switchName
的自动填充功能,但有时会有效,有时它不会......我会解释。
当我在自己的数据库中尝试使用1行自动完成时,自动完成功能正常,但是当我放置所有开关(300行)时,不会显示任何值。
我认为没有错误,因为SQL请求有效,但有时候,我的JSON没有值,这就是我的自动完成没有值的原因。
你能帮助我吗?
我的PHP:
if (isset($_GET['term'])){
$connection = new Connection;
$connection->connection();
$conn = $connection->getConnection();
$requete = $conn->prepare('SELECT switchName FROM switch
WHERE switchName LIKE :term');
$requete->execute(array('term' => $_GET['term'].'%'));
$array = array();
while($donnee = $requete->fetch())
{
$array[] = $donnee['switchName'];
}
echo json_encode($array);
}
和我的JS:
$(function(){
$(".switchName").autocomplete({
source: 'switchName.php',
minLength: 1
});
});
和我的HTML:
<tr>
<td>Switch*</td>
<td><input type="text" class='switchName' name="switchName"/></td>
</tr>
答案 0 :(得分:0)
因此,即使您的echo json_encode($array);
没问题,您的$array
有时也没有值?您是否使用utf-8
以外的字符编码?如果您使用不同的编码,则必须先转换为utf-8
,否则json_encode
将失败。