0

出于某种原因,我的自动完成总是显示我的数据源中的所有变量。有谁知道这个问题?

我的 index.jsp

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

<script>
    $(function () {
        $("#streamers").autocomplete({
            source: '${pageContext.request.contextPath}/getStreamerList'
        });
    });
</script>

 <div class="ui-widget">
                Streamer:
                <input id="streamers" type="text" name="streamerName" value=${fn:escapeXml(param.streamerName)}>
            </div>

我的控制器:

@RequestMapping(value = {"/getStreamerList"}, method = RequestMethod.GET)
public
@ResponseBody
List<String> getStreamerList() {
    List<String> list = new ArrayList<String>();
    list.add("TEST");
    list.add("BOB");
    return list;
}

无论我输入什么,TEST 和 BOB 基本上都会显示在自动完成中,例如“est”

4

2 回答 2

0

你有没有把杰克逊 JSON 放在你的类路径中使用以下坐标用于 maven 项目

            <!-- Jackson JSON Mapper -->
        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>${jackson.version}</version>
        </dependency>
于 2013-10-17T14:36:45.110 回答
0

nvm 这是预期的行为。我应该根据 jquery API 在服务器端过滤结果。

于 2013-10-14T00:39:41.053 回答