javascript-无法使用Jquery解析JSON

我正在尝试使用solr和jquery进行自动提示.为此,我编写了以下代码:

$(function(){

    $( "#artist" ).autocomplete({
        source: function( request, response ) {
            $.ajax({
                url: 'http://localhost:8983/solr/terms?terms.fl=heading&terms.prefix='
                +request.term+'&wt=json&json.nl=map',

                dataType: "jsonp",

                data: {
                    q: request.term,
                    rows: 10, 
                    omitHeader: true,
                },
                success: function( data ) {
                    response( $.map( data.terms.heading, function( item ) {
                        return {
                            label: item,
                            value: item
                        }
                    }
                    )
                    );
                }
            });
        },

        minLength: 2,
        select: function( event, ui ) {
            log( ui.item ?
                "Selected: " + ui.item.label :
                "Nothing selected, input was " + this.value);
        },
        open: function() {
            $( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" );
        },
        close: function() {
            $( this ).removeClass( "ui-corner-top" ).addClass( "ui-corner-all" );
        }

    });
});

在Chrome中运行时出现以下错误

未捕获到的SyntaxError:意外令牌:
我得到的Json数据是这个

{“ terms”:{“ heading”:{“ answer”:24,“ ansari”:5}}}

我咨询了以下链接http://jqueryui.com/demos/autocomplete/#remote-jsonp,但我找不到解决方案.请指出我在做什么错

解决方法:

您(正确吗?)指定了JSONP来访问跨源资源,但是您没有告诉Solr您希望它发出JSONP而不是纯JSON.

将jsonp:’json.wrf’添加到$.ajax的参数中.

http://xplus3.net/2010/09/21/solr-and-jsonp/的更多内容

上一篇:Apache Solr Velocity模板注入rce+获取交互式shell


下一篇:Linux中Solr的安装