Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jQueryUIAutoComplete和GeobytesAPI将响应数据仅限于城市和州_Jquery_User Interface - Fatal编程技术网

使用jQueryUIAutoComplete和GeobytesAPI将响应数据仅限于城市和州

使用jQueryUIAutoComplete和GeobytesAPI将响应数据仅限于城市和州,jquery,user-interface,Jquery,User Interface,我使用jQueryUIAutoComplete和jQuery$.ajax从GeobytesWeb服务获取城市和州。我的目标是为美国境内的所有城市和州提供自动完成文本输入。现在,我能够将数据调用限制在美国境内的城市和州,但当自动完成结果显示时,“美国”部分也会显示。例如,如果我输入“cin”,城市、州和“美国”部分就会显示出来。我怎么能让结果只显示没有“美国”部分的城市和州 以下是我的JS代码: <script> $(function() { function log( m

我使用jQueryUIAutoComplete和jQuery$.ajax从GeobytesWeb服务获取城市和州。我的目标是为美国境内的所有城市和州提供自动完成文本输入。现在,我能够将数据调用限制在美国境内的城市和州,但当自动完成结果显示时,“美国”部分也会显示。例如,如果我输入“cin”,城市、州和“美国”部分就会显示出来。我怎么能让结果只显示没有“美国”部分的城市和州

以下是我的JS代码:

<script>
  $(function() {
    function log( message ) {
      $( "<div>" ).text( message ).prependTo( "#log" );
      $( "#log" ).scrollTop( 0 );
    }

    $( "#city" ).autocomplete({
      source: function( request, response ) {
        $.ajax({
          url: "http://gd.geobytes.com/AutoCompleteCity",
          dataType: "jsonp",
          data: {
            filter: "US",
            q: request.term
          },
          success: function( data ) {
            console.log(data);
            response( data );
          }
        });
      },
      minLength: 3

    });
  });
  </script>

$(函数(){
功能日志(消息){
$(“”).text(message).prependTo(“#log”);
$(“#log”).scrollTop(0);
}
$(“#城市”).autocomplete({
来源:功能(请求、响应){
$.ajax({
url:“http://gd.geobytes.com/AutoCompleteCity",
数据类型:“jsonp”,
数据:{
过滤器:“美国”,
问:请求.期限
},
成功:功能(数据){
控制台日志(数据);
答复(数据);
}
});
},
最小长度:3
});
});

我是Goebytes的AutoCompleteCity API的创建者,我刚刚添加了一个模板参数,允许您格式化返回的列表-排除国家或州,甚至包括一些其他城市属性,但在任何情况下,为了回答您的问题-只需将模板:“,”添加到您正在传递的参数中-如下所示

data: {
        filter: "US",
        template: "<geobytes city>, <geobytes code>",
        q: request.term
      },
数据:{
过滤器:“美国”,
模板:“,”,
问:请求.期限
},
API主页上有更多的解释:

如果您使用用户的选择来获取他们通过GetCityDetails API选择的城市的详细信息,那么问题可能会出现——在这种情况下,您需要记住将截断的部分追加回