Bootstrap 3 Typeahead不显示结果

时间:2016-10-28 09:20:57

标签: php jquery json ajax bootstrap-typeahead

我使用带有ajax调用的Bootstrap 3 Typeahead。 该函数正确返回数据,但它们不会出现。

这是我的代码:

$('#txtComune').typeahead({
        minLength: 2,
        delay: 400,
        items: 5,
        source: function (query, response) {
            $.ajax({
                url: '<?= $root; ?>/get_comuni',
                dataType: "json",
                type: 'POST',
                data: {
                    query: query
                },
                success: function (data) {
                    response(data.comuni);
                }
            });
        },
        displayText: function (item) {
            console.log(item.comune);
            return item.comune;
        }
    });

console.log函数返回所有城市名称,但下拉列表不会出现在文本框中。

这是我的文本框代码:

<input name="txtComune" class="form-control input-md" data-provide="typeahead" autocomplete="off" id="txtComune" type="text" placeholder="" maxlength="250">

这是我的JSON结果:

{
"exception": false,
"comuni": [{
    "idComune": 1332,
    "comune": "Caraffa di Catanzaro",
    "pv": "CZ",
    "cap": "88050",
    "attivo": 1
}, {
    "idComune": 1831,
    "comune": "Catania",
    "pv": "CT",
    "cap": "951xx",
    "attivo": 1
}, {
    "idComune": 1832,
    "comune": "Catanzaro",
    "pv": "CZ",
    "cap": "88100",
    "attivo": 1
}, {
    "idComune": 3240,
    "comune": "Gravina di Catania",
    "pv": "CT",
    "cap": "95030",
    "attivo": 1
}, {
    "idComune": 4076,
    "comune": "Militello in Val di Catania",
    "pv": "CT",
    "cap": "95043",
    "attivo": 1
}, {
    "idComune": 6258,
    "comune": "San Gregorio di Catania",
    "pv": "CT",
    "cap": "95027",
    "attivo": 1
}]
}

1 个答案:

答案 0 :(得分:1)

请更改此内容:

sudo ../shell/indexer.php reindex all 

source: function (query, response) {
        $.ajax({
            url: '<?= $root; ?>/get_comuni',
            dataType: "json",
            type: 'POST',
            data: {
                query: query
            },
            success: function (data) {
                response(data.comuni);
            }
        });
}

以下是一个示例:jsfiddle