为什么我的两行无条件推送的数组包含两行数据?

问题描述 投票:0回答:1

我正在尝试从 PHP 文件中获取一些自动完成功能,但效果不佳。

这是 html 文件:

<div class="ui-widget">
    <label for="tags">Tags: </label>
    <input id="tags" />
</div>

这是 jquery 脚本:

<script>
$(function() {      
    $( "#tags" ).autocomplete({
        source: "test.php", 
        autoFocus : true,
        dataType: "json"

    });
});
</script>

这是 test.php 文件:

$term = $_REQUEST['term']; 
$result = array();

$arr['id'] = "pippo";
$arr['value'] = "pippo";
array_push($result, $arr);

$arr['id'] = "topo";
$arr['value'] = "topo";
array_push($result, $arr);

echo json_encode($result);

如果我输入

T
,我会在结果中同时得到
topo
pippo
。为什么?

php arrays
1个回答
0
投票

因为你告诉服务器返回所有结果:

 $arr['id'] = "pippo";
 $arr['value'] = "pippo";    
 array_push($result, $arr);    
 $arr['id'] = "topo";    
 $arr['value'] = "topo";    
 array_push($result, $arr);

不仅仅是那些匹配的

© www.soinside.com 2019 - 2024. All rights reserved.