Dieser Code funktioniert in allen gängigen Browsern außer Internet Explorer 9. Ich verstehe nicht, was ich falsch mache, es ist wahrscheinlich etwas einfaches, das ich vermisse.
Kopieren Sie diesen Code (oder dieses jsFiddle ), um das Problem in IE9 zu sehen:
%Vor%Ich möchte, dass es am Ende so browserübergreifend wie möglich ist.
IE 9 ignoriert option
-Elemente, die keine direkten Kinder eines select
-Elements sind (oder optgroup
in einem). Eine einfache Lösung besteht darin, Ihre option
-Elemente mithilfe von bedingten Kommentaren in ein verstecktes select
-Element einzufügen:
Hier ist eine jsFiddle-Demo zu diesem Ansatz.
2017 Update: Es ist erwähnenswert, dass ab Juli 2017 Safari auf iOS & amp; Der Mac hat immer noch keine Unterstützung für <datalist>
-Elemente hinzugefügt. OP hat nach einer Lösung gefragt, die alle gängigen Browser unterstützt, daher ist dies wahrscheinlich nicht die beste Lösung für diesen Effekt.
Weitere Informationen hier: Ссылка
Aus irgendeinem Grund funktionierte die Lösung nicht für mich. Stattdessen habe ich die Autocomplete-Methode von jQuery UI und Modernizr verwendet, um zu überprüfen, ob der Browser dies unterstützt.
Ich benutzte diesen JavaScript-Code:
%Vor%Für den folgenden HTML-Code:
%Vor%Verwendet den folgenden Microsoft-Beitrag als Referenz: Ссылка
Tags und Links javascript html5 cross-browser internet-explorer-9 html-datalist