Dojo 筛选选择 - 完整的 JSON 响应数据不可见

Dojo FilteringSelect - Full JSON Response Data Not Visible

本文关键字:数据 响应 JSON 选择 筛选 Dojo      更新时间:2023-09-26

尝试将 jQuery 自动完成转换为 Dojo 版本。 最初遵循此建议(使用DOJO自动完成文本框),但切换到JsonRest

输入输入时(例如"th")我可以在控制台中看到正确的 JSON 响应,[{"id":"thing1","label":"thing1"},{"id":"thing2","label":"thing2"},{"id":"thing3","label":"thing3"}] ,但屏幕上没有显示选项列表。 当焦点离开目标input时,它总是使用第一个元素自动完成(在本例中为"thing1")。

// DOM Element
<div id="things"></div>
// Get data
var jsonStore = new JsonRest  ({  
    target: "/ajax_suggest/autocomplete"
});
// Autocomplete attempt
ready(function(){
    var thingSearch = new FilteringSelect({
        id: "things",
        name: "things",
        store: jsonStore,
        placeHolder: "Search the things...",
        searchAttr: "term",
        onSearch: function(results, query) {
            console.log(JSON.stringify(results));
        }                   
    },"things");
    thingSearch.startup();
});
所以,在

这一点上,我很满意在处理完input数据后数据正确到达,最终,input的内容是"自动完成"的,但我错过了一些东西,或者没有掌握一些东西,这是非常基本的,可以在这里显示完整的响应!

你有searchAttr: "term",但"term"不在你的JsonRest存储中 - 我认为你希望这是searchAttr: "label"