我有一个使用 html5元素input
显示列表的字段。<datalist>
问题是<datalist>
浏览器自动完成功能还会显示历史列表(这是以前键入的值的列表,不包含在 中<datalist>
)。所以我只想摆脱history-list
not <datalist>
。
如果我使用该autocomplete = "off"
功能,这也会阻止<datalist>
.
简而言之,我只想要不是<datalist>
历史的。
我有一个使用 html5元素input
显示列表的字段。<datalist>
问题是<datalist>
浏览器自动完成功能还会显示历史列表(这是以前键入的值的列表,不包含在 中<datalist>
)。所以我只想摆脱history-list
not <datalist>
。
如果我使用该autocomplete = "off"
功能,这也会阻止<datalist>
.
简而言之,我只想要不是<datalist>
历史的。
您是否可以使用input
没有id
orname
属性的字段?没有它,浏览器实际上没有任何方法将历史记录与该元素相关联。
在我对 Firefox 的真正快速测试中,这似乎起到了作用:
<form>
<!-- these will remember input -->
With id: <input id="myInputId" list="myList" /><br />
With name: <input name="myInputName" list="myList" /><br />
<!-- these will NOT remember input -->
No id, name, class: <input list="myList" /><br />
With class: <input class="myInputClass" list="myList" />
<datalist id="myList">
<option value="Option 1"></option>
<option value="Option 2"></option>
</datalist>
<br />
<input type="submit" />
</form>
在上面的代码中,input
带有id
or的 sname
会记住过去的值,但input
没有任何东西的 s 和只有 a 的输入class
不会记住任何东西。
不幸的是,如果您需要使用or ,这确实会使使用input
稍微困难一些。在这种情况下,我会尝试使用一个也是' ed的 'ed,然后使用一些 JavaScript 使其与不会记住过去值的同步。name
id
id
input
display: none
input
我使用这样的代码:
<input name="anrede" list="anrede" onmousedown="value = '';" />
<datalist id="anrede">
<option value="Herr"></option>
<option value="Frau"></option>
</datalist>
good : 显示供选择的数据列表已完成
bad:输入字段为空,因此如果用户需要记住旧值,则未记录旧值
你可以使用自动完成=“新密码”。autocomplete = "off" 在我的情况下不起作用。
<input name="q" type="text" autocomplete="new-password"/>
试试这个,我希望它有效。
<input id="datalisttestinput" list="stuff" autocomplete="off"></input>
<datalist id="stuff">
<option id="1" value="Amy">
<option id="2" value="Kristal">
<option id="3" value="Collin">
<option id="4" value="Carl">
</datalist>
尝试这个:
<datalist id="datalist_id">
js:
dataList = $("#datalist_id")
dataList.empty()
这将清除数据列表的历史记录。这在 chrome 上对我有用。然后,如果您想向列表中添加选项,请尝试:
dataList.append("<option>Some Option</option>")
干杯!!!