【问题标题】:Autocomplete with nested array on json file使用 json 文件上的嵌套数组自动完成
【发布时间】:2019-01-19 21:20:11
【问题描述】:

这是我的 json 文件

"type": "FeatureCollection",
"name": "maps",
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
"features": [
{ "type": "Feature", "properties": { "IDLo": "1", "SoHieu": "1-1", "KyHieu": "C", "TenLo": "C1-1", "TenCty": "CMC Data Center"}, "geometry": { "type": "Polygon", "coordinates": [ [ [ 106.791800519464871, 10.854928689692501 ], [ 106.792069337729856, 10.855930098557222 ], [ 106.792653322236532, 10.855766231881775 ], [ 106.79231961680415, 10.854783029941672 ], [ 106.791800519464871, 10.854928689692501 ] ] ] } },
{ "type": "Feature", "properties": { "IDLo": "2", "SoHieu": "1-2", "KyHieu": "C", "TenLo": "C1-2", "TenCty": "ASCENDAS" }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 106.79264868743887, 10.855779887550094 ], [ 106.792064702932166, 10.855943754285464 ], [ 106.791786615071828, 10.854942345054598 ], [ 106.79101723865827, 10.855151730898562 ], [ 106.790461062937595, 10.855306494254153 ], [ 106.789969774384346, 10.855424842648457 ], [ 106.789478485831097, 10.855688850436046 ], [ 106.78819928167357, 10.857819111634392 ], [ 106.790915273109462, 10.859412245764197 ], [ 106.791907119811313, 10.857746282442497 ], [ 106.792111050908886, 10.857518691103408 ], [ 106.792379869173871, 10.857291099590915 ], [ 106.792583800271444, 10.856999782201919 ], [ 106.792732113796944, 10.856544598212894 ], [ 106.792741383392297, 10.856116724630859 ], [ 106.79264868743887, 10.855779887550094 ] ] ] } }]

我想在 features.properties.TenCty 上自动完成搜索

这是javascript

jQuery(document).ready(function($) {
     $('#cty').autocomplete({
        source: function (request, response) {
        $.ajax({
            type: 'GET',
            url: "data/maps.json",
            dataType: 'json',
            data: request,
            success: function(data) {
                $.each(data.features, function(d){
                    response($.map(d.properties, function(item) {
                        console.log(item.TenCty);
                        return (item.TenCty);
                    }));
                })
            }
        }); 
   },  
   minLength: 2
  });
  });

但我什么都得不到,像这样的控制台XHR finished loading: GET "http://localhost:81/blog/data/maps.json?term=fd".

我不知道错误在哪里。请帮忙。 非常感谢。

【问题讨论】:

    标签: javascript json autocomplete


    【解决方案1】:

    基本上,您必须将success 回调更新为:

    success: function(data) {
       var result = $.each(data.features, function(d) {
           return (d.properties.TenCty);
       })
       response(result)
    }
    

    不过你可以重新访问JQuery UI Autocomplete Remove JsonP code samples.

    【讨论】:

    • 其实还是不行,已经回复response($.map(d.properties, function(item) { console.log(item.TenCty); return (item.TenCty); }));
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多