我有JSON数据,我有两个数组cities
和countries
。当我点击我的输入城市时会自动打开,但我也想这样做:
如果我填写了我的输入城市必须打开(这是我做的okey)
但同时如果我写了一些例如denmark
(这是国家列表),那么必须看到丹麦是否匹配..我该怎么做?
click to see if you see on codepen
var myJSON = '{ "cities":[ "copenhagen", "london", "hamburg" ], "countries":[ "denmark", "norway", "sweden" ] }';
var myObj = JSON.parse(myJSON);
var testInput = document.getElementById("test");
testInput.setAttribute("data-list", myObj.countries)
function showlist() {
}
var comboplete = new Awesomplete('input.dropdown-input', {
minChars: 0,
});
Awesomplete.$('#test').addEventListener("click", function() {
if (comboplete.ul.childNodes.length === 0) {
comboplete.minChars = 0;
comboplete.evaluate();
}
else if (comboplete.ul.hasAttribute('hidden')) {
comboplete.open();
}
else {
comboplete.close();
}
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/awesomplete/1.1.1/awesomplete.min.js"></script>
<input id="test" class="dropdown-input" />
&#13;
答案 0 :(得分:1)
我从您的问题中得到的是,您希望在键入任何内容时显示两个数组中的条目。要实现这一点,请使用(myObj.cities.concat(myObj.countries))
数组而不是myObj.cities
或myObj.countries
数组。