【问题标题】:jQuery UI Autocomplete JSON IssuejQuery UI 自动完成 JSON 问题
【发布时间】:2013-11-04 05:53:53
【问题描述】:

我将下面的代码用于 jQuery UI 自动完成。

<script>
$(function() {

    $( "#city" ).autocomplete({
        source: function( request, response ) {

        $.post('<?php echo base_url()?>records/get_village_street_town_name', {
           SourceLanguage: 'SourceLanguage',
           inputVal: $( "#city" ).val()
        },

       function (data) { 
            citydata = jQuery.parseJSON( data );

            response( 

            $.each(citydata, function( index, city ) {
                return city.cityname;
            })

        );


       });



        },
        minLength: 2,
    });
});
</script>

下面是通过 AJAX 调用的返回 O/P。

[{"cityname":"ABCDE"},{"cityname":"ABDCE"},{"cityname":"ABEDC"}]

问题是城市文本框没有填充来自 AJAX 的城市名称?我该如何解决这个问题?

我在下面提到了两个但没有帮助。

JQuery UI autocomplete with json and ajax

Using jquery ui autocomplete + ajax json data

【问题讨论】:

  • 试试$.map 而不是$.each
  • 会的。感谢您的信息
  • 没有必要 $.map() 也因为没有数据操作......data 是一个对象数组
  • 如果你能告诉我问题出在哪里
  • @ArunPJohny,很好。我什至从未看过那​​个函数体。 :P

标签: javascript jquery ajax json jquery-ui


【解决方案1】:

您的某些 JSON 代码无效,解析器未将其识别为对象,在您声明的示例中 [{"cityname":"ABCDE"},{"cityname":"ABDCE"},,{"cityname":"ABEDC"}] 应该是 [{"cityname":"ABCDE"},{"cityname":"ABDCE"},{"cityname":"ABEDC"}]

【讨论】:

    【解决方案2】:

    工作代码是

    <script>
    $(function() {
    
        $( "#city" ).autocomplete({
            source: function( request, response ) {
    
            $.post('<?php echo base_url()?>records/get_village_street_town_name', {
               SourceLanguage: 'SourceLanguage',
               inputVal: $( "#city" ).val()
            },
    
           function (data) { 
                citydata = jQuery.parseJSON( data );
    
                response( 
    
                $.map( citydata, function( item ) {
                    return item.cityname;
                })
    
            );
           });
    
            },
            minLength: 2,
        });
    });
    </script>
    

    【讨论】:

      猜你喜欢
      • 2011-11-16
      • 2017-06-19
      • 2011-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多