12

我注意到,当您将文本字段连接到数据列表时,不同的浏览器在建议文本字段的值方面有不同的行为。一些浏览器会显示以您输入的内容开头的条目(IE,较旧的 chrome 版本),而其他浏览器会显示包含您作为子字符串输入的内容的条目(firefox,较新的 chrome 版本)。

例如,i在文本框中键入,然后观察建议:

browser: 
<datalist id="browsers">
    <option value="Google Chrome">Google Chrome</option>
    <option value="Internet Explorer">Internet Explorer</option>
    <option value="Firefox">Firefox</option>
    <option value="Opera">Opera</option>
    <option value="Safari">Safari</option>
    <option value="Others">Others?</option>
</datalist>
 <input type="text" name="browser" list="browsers">

(或者这里是一个小提琴,如果你喜欢http://jsfiddle.net/yaj8ut3m/

在 IE 中,它只会提示Internet Explorer, 但 firefox 和最近的 chrome 会提示Internet Explorer,FirefoxSafari.

有什么方法可以指定使用哪种自动建议过滤行为?

注意:不接受 javascript 解决方案

4

2 回答 2

4

这是未指定的选项。

和已知问题

If you type "V" the list will show only items that start with "V" in Chrome, Opera and IE, and any <option> containing "V" in Firefox.
于 2015-01-19T21:23:19.117 回答
2

如果问题是:

“有什么方法可以指定使用哪种自动建议过滤行为?

注意:javascript 解决方案是不可接受的”

答案将(可悲)是:不,没有,这取决于浏览器的实现,并且 datalist 标记没有任何属性。

不得不说,全是“插件”,相对来说是写一个,但是用js的。

于 2015-01-20T11:15:20.600 回答