如何用jquery控制我的Json?

时间:2017-03-23 07:49:28

标签: javascript jquery json autocomplete

我有JSON数据,我有两个数组citiescountries。当我点击我的输入城市时会自动打开,但我也想这样做:

如果我填写了我的输入城市必须打开(这是我做的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;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

我从您的问题中得到的是,您希望在键入任何内容时显示两个数组中的条目。要实现这一点,请使用(myObj.cities.concat(myObj.countries))数组而不是myObj.citiesmyObj.countries数组。