【问题标题】:Autocomplete with JSON使用 JSON 自动完成
【发布时间】:2017-08-14 06:17:15
【问题描述】:

我有 JSON 数据,我猜我的 JSON 是有效的,但是我不明白它是如何工作的?当我写城市或国家时什么都没有发生,我将如何使它工作?

我有data-list 属性,当我点击我的输入时,我的数据列表会自动打开,到目前为止一切正常。但是如果我写了一些东西,我的内联数据列表属性就不能再工作了,只有我的 Json 必须工作我怎么能这样做?

我正在使用Awesomplete plugin,如果您想在codepen please click to see on codepen 上查看我的项目

var myJSON = '{ "cities":[ "copenhagen", "london", "hamburg" ], "countries":[ "denmark", "norway", "sweden" ] }';

var myObj = JSON.parse(myJSON);
document.getElementById("demo").innerHTML = "Cities : " + myObj.cities;
document.getElementById("demo1").innerHTML = "countries : " + 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();
  }
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/awesomplete/1.1.1/awesomplete.min.css" rel="stylesheet" />

<div id="demo"></div>
<div id="demo1"></div>



<!--<input type="text" class="awesomplete" data-list="PHP,ASP,ASP.NET,Python,CSS,HTML,C#,C++,Delphi,Visual Basic" onclick="showlist()">-->

<br><br> with auto list

<input id="test" data-list="CSS, JavaScript, HTML, SVG, ARIA, MathML" class="dropdown-input" />

<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>

【问题讨论】:

  • 请详细解释预期结果
  • 实际上就像tourradar.com,如果你点击输入,你会显示默认数据,但在写完之后你会看到另一个数据我想做类似的事情,这就是为什么我需要多个数据-list

标签: javascript jquery json autocomplete


【解决方案1】:

您必须访问输入的“数据列表”属性并将您的 json 设置为数据源。

试试这个:

    var testInput = document.getElementById("test");
    testInput.setAttribute("data-list", myObj.countries)

【讨论】:

  • 是的,但现在我的属性数据列表不起作用。codepen.io/cowardguy/pen/zZWMzp
  • 你能检查一下你的codepen吗?好像是旧版本。我看不到任何更新。
  • 好吧,我又在这里分叉了,你是:codepen.io/cowardguy/pen/zZWMzp
  • 或者有没有可能这样做..当我专注输入时,我的国家列表必须打开,但如果我键入,我的城市必须打开
猜你喜欢
  • 2014-09-30
  • 1970-01-01
  • 2018-01-18
  • 2013-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多