来自eventlistener的Datalist意外返回

时间:2017-07-29 16:13:17

标签: javascript dom javascript-events addeventlistener html-datalist

我试图从datalist选择中返回以将其打印到#body div并使用它来调用其他函数,但不幸的是由于某种原因我得到了返回" undefined& #34;相反,我也无法控制选择,只能从提供的数据列表选项中进行控制。

任何解决这两个问题的建议都会非常感激!

提前致谢! :)

//Html snippet
<input id="dirSearch" list="dirList" type="text"/>
  <datalist id="dirList"></datalist>

// Array
const db = [
    1,
    2
];

//Functions
function autocomplete () {
  let options = '';
    for(let i = 0; i < db.length; i++)
      options += '<option value="'+db[i]+'">'+db[i]+'</option>';
  document.getElementById('dirList').innerHTML = options;
}
autocomplete();

function searchSelection () {
  let dirSearch = document.getElementById('dirSearch');
  let dirList = document.getElementById('dirList');

  dirSearch.addEventListener ('input', function () {
    document.getElementById('body').innerHTML = "<h1>" +dirList.option+ "</h1>";
  }, false);

}
searchSelection();

1 个答案:

答案 0 :(得分:0)

getElementById(&#34; dirSearch&#34;)。value而不是dirList.option 而且它是dirList.options - &gt;它返回datalist中的可用选项。