Javascript 使用html格式文本自动完成动态列表

Javascript 使用html格式文本自动完成动态列表,javascript,css,node.js,html,dom,Javascript,Css,Node.js,Html,Dom,我想用html格式的文本生成自动完成建议列表,就像我们在谷歌地图中键入时一样 当我选择列表中的一个项目时,我希望我的JavaScript使用文本值运行,到目前为止,我只能创建一个建议列表,但我得到一个箭头 我不想要,也不知道如何在每个文本字段上添加onclick操作 下面是我的工作代码的代码片段 javascript var suggestlist = "datalist1"; var list = document.getElementById(sugges

我想用html格式的文本生成自动完成建议列表,就像我们在谷歌地图中键入时一样

当我选择列表中的一个项目时,我希望我的JavaScript使用文本值运行,到目前为止,我只能创建一个建议列表,但我得到一个箭头

我不想要,也不知道如何在每个文本字段上添加onclick操作

下面是我的工作代码的代码片段 javascript

        var suggestlist = "datalist1";
        var list = document.getElementById(suggestlist);
        // As long as datalist has a child node, remove it
        while (list.hasChildNodes()) {   
            list.removeChild(list.firstChild);
        }

        for(var i=0; i<n; i++) {
            var node = document.createElement("option");
            var textNode = document.createTextNode(response.results[i].title);
            node.appendChild(textNode);
            document.getElementById(suggestlist).appendChild(node);
        }
var suggestlist=“datalist1”;
var list=document.getElementById(suggestlist);
//只要datalist有子节点,就将其删除
而(list.hasChildNodes()){
list.removeChild(list.firstChild);
}

对于(var i=0;iBecause您正在创建“选项”,因此您将获得下拉箭头。要避免箭头,请使用select:-ms expand{display:none;}由于我是javascriptselect新手,您能否更具体地说明我应该编辑什么::-ms expand{display:none;}您可以使用此CSS。如果它对您有效,那么我将发布此作为其他人的答案。添加选择::-ms expand{display:none;}但不起作用…您必须在运行时添加此CSS。因为您正在运行时创建选项。您可以在创建选项的jQuery代码中添加它。
    <form>
    <div class="input-field" style="width: 30%">
        <label class="label-icon" for="search"><i class="material-icons">search</i></label>
        <input id="getlocation_pickup" placeholder="pickup location" type="search" list="datalist1" required
               onkeypress="placesSearch(platform, 'pickup')">
        <datalist id="datalist1"></datalist>
    </div>