小编DLB*_*DLB的帖子

什么是jQuery UI Autocomplete在AppEngine上返回非本地结果的简单示例

我正在尝试实现一个jQuery自动完成搜索栏,以便在Google AppEngine(GAE)上托管.我看过帖子表明如果我想使用远程源,我必须自己过滤结果.如果我将列表中的列表作为数组存储,如果过滤正确,那么我也尝试将从GAE返回的大型服务器端JSON数组转换为本地客户端数组,以避免需要手动过滤.两种尝试都没有奏效.

获取过滤的非本地结果的最简单方法(对于jQuery/.js初学者)是什么?

这是我尝试使用jQueryui文档中提供的正则表达式示例,以及在SO上发布的其他示例.如果我在搜索栏中输入"c",我的下拉列表只会显示并返回字母c.

GAE .py代码:

class Search(webapp2.RequestHandler):
    def get(self):
        data = ["chickenpox", "chlamydia", "cholera" ]
        tags = json.dumps(data)
        self.response.out.write(tags)
Run Code Online (Sandbox Code Playgroud)

模板代码:

注意:'/search'指向返回json数据的GAE服务器处理程序.

<script>
var availableTags = '/search';

$(function() {                          
$( "#autocomplete" ).autocomplete({
    source: function( request, response ) {
            var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( request.term ), "i" );
            response( $.grep( availableTags, function( item ){
                return matcher.test( item );
            }) );
        },  
    minLength: 1,
     select: function( event, ui ) {
                $("#user_input").html('Selected: '+ ui.item.value);
                var entry = ui.item.value; …
Run Code Online (Sandbox Code Playgroud)

google-app-engine jquery-ui autocomplete jquery-ui-autocomplete

1
推荐指数
1
解决办法
4467
查看次数