0

我将playframework 2.1.1 与 jquery 1.9.0、twitter bootstrap typeahead 和 underscore.js 一起使用。我的目标是实现一个简单的自动完成 REST 服务。

设置

我的路线文件

GET   /api/search/autocomplete/:query   controllers.Autocomplete.complete(query)

我的后端代码返回一个 json 字符串列表。

我的 typeahead 函数的 search.js 实现。

$('form :text').typeahead({
    items: 15,
    matcher: function() { return true }, // turn off jquery intelligence

    // debounce would be really helpful here
    source:  function (query, process) {
        var load = jsRoutes.controllers.Autocomplete.complete(query).ajax({
            success: function(results) {
                process(results);
            },
            error: function(xhr, status, msg) {
                console.log(xhr);
                console.log(status);
                return false;
            }
        });
        _.debounce(load, 250);
    }
});

问题

如果我打电话给网址

本地主机:9000/api/search/autocomplete/s

一切正常,我得到了一个 JSON。但是我将此 URL 称为

jsRoutes.controllers.Autocomplete.complete(query).ajax(...)

我得到一个“状态:0”。而且只在字母b上!!

4

1 回答 1

0

这是BE代码中的一些错误。然而 jquery 的错误报告有点奇怪。对不起

于 2013-07-18T17:02:10.050 回答