如何在继续使用 html 中的 datalist 元素的同时关闭自动完成功能 [英] How to turn off autocomplete while keep using datalist element in html
问题描述
我有一个 input
字段,它显示了一个使用 html5 元素的列表.问题在于,使用
时,浏览器自动完成功能还会显示历史列表(这是以前键入的值的列表,未包含在
>).所以我只想摆脱
history-list
而不是 .
I have a input
field which shows a list using html5 <datalist>
element. The problem is that with <datalist>
the browser autocomplete also shows the history list (which is the list of previously typed values, that are not included in the <datalist>
). So I just want to get rid of the history-list
not the <datalist>
.
如果我使用 autocomplete = "off"
功能,这也会阻止 .
If I use the autocomplete = "off"
feature, this also blocks the <datalist>
.
简而言之,我只想要 而不是历史记录.
In short, I just want the <datalist>
not the history one.
推荐答案
是否可以在没有 id
或 name<的情况下使用
input
字段?/code> 属性?没有它,浏览器就无法真正将历史记录与该元素相关联.
Is it possible for you to use the input
field without an id
or name
attribute? Without that, the browser doesn't really have any way to associate a history with that element.
在我对 Firefox 的真正快速测试中,这似乎奏效了:
In my real quick testing on Firefox, this seemed to do the trick:
<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>
在上面的代码中,带有 id
或 name
的 input
会记住过去的值,但 input
没有任何东西,只有一个 class
的输入将不记住任何东西.
In the code above, the input
s with an id
or name
would remember past values, but the input
without anything and the input with just a class
would not remember anything.
不幸的是,如果您需要它具有name
或id代码>.在这种情况下,我会尝试使用
id
'ed input
这也是 display: none
'ed 然后使用一些 JavaScript 来保持它与不会记住过去值的 input
同步.
Unfortunately, this does make using the input
slightly more difficult if you need it to have a name
or id
. In that case, I'd try having an id
'ed input
which is also display: none
'ed and then use some JavaScript to keep it in sync with an input
that won't remember past values.
这篇关于如何在继续使用 html 中的 datalist 元素的同时关闭自动完成功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!