【问题标题】:How to implement auto complete using jquery marcopolo如何使用 jquery marcopolo 实现自动完成
【发布时间】:2017-02-07 05:11:03
【问题描述】:

我正在尝试实现 marcopolo,这是一个用于自动完成的 jquery 插件。

这是我的两个问题。

1) 如果我输入一个字母或任何单词,“方向”的所有值都会出现,这是不正确的。例如,我想如果我搜索“向上”,任何带有这两个字母的单词都会出现。

2) 如果用户搜索“向上”并点击回车或点击提交按钮,他们应该被带到与该词关联的 URL。

Github 参考:https://github.com/jstayton/jquery-marcopolo
马可波罗示例:http://jstayton.github.io/jquery-marcopolo/example1.html

这是我的代码笔:http://codepen.io/anon/pen/rrwgwJ

HTML

<input type="text" name="autoCom" id="autoCom"><input type="submit" class="send">

CSS

ol {position: absolute; top: 20px;}
ol.mp_list {list-style-type: none;}

JS

$(function(){

$('#autoCom').marcoPolo({
        url: 'https://api.myjson.com/bins/ygdk',
        minChars: 1,
        submitOnEnter: true,
            formatData: function (data) {
                return data; //possible issue
            },
        formatItem: function (data, $item) {
            return data.Direction;
            },
            onSelect: function (data, $item) {
        //window.location = data.URL;
        this.val(data.Direction);
        window.open(data.URL,'_blank');
            }
    });

});

感谢您的帮助!

【问题讨论】:

    标签: javascript jquery html css autocomplete


    【解决方案1】:

    问题是您发送的“q”变量包含&lt;input/&gt; 元素的内容,但您配置为 JSON 响应的页面并未使用该“q”变量过滤任何内容,因此,您将始终得到相同的结果。

    [{"Direction":"Up","URL":"http://www.google.com"},{"Direction":"Left","URL":"http://www.cnn.com"},{"Direction":"Right","URL":"http://www.engadget.com"},{"Direction":"Down","URL":"http://www.twitter.com"},{"Direction":"Upward","URL":"http://www.facebook.com"},{"Direction":"Leftwing","URL":"http://www.snapfish.com"},{"Direction":"Rightwing","URL":"http://www.gizmodo.com"},{"Direction":"Downward","URL":"http://www.fox.com"}]
    

    【讨论】:

    • 抱歉,这个 JSON 的新手。我正在查看gist.github.com/jstayton/1008099 上的代码。就像代码的第35行一样,我需要在JS中添加“param:'query'”吗?或者我需要在 JSON 文件中更新什么?谢谢!
    • Marcopolo 将您在文本框中键入的内容发送到服务器,假设服务器将过滤您的输出,但它永远不会被过滤,那么服务器总是返回相同的内容。
    猜你喜欢
    • 2018-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-07
    • 2010-10-03
    • 2011-07-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多