我有一个简单的程序,它必须从服务器上的文本文件中获取值,然后在数据列表中填充输入文本字段中的选择。
为此,我想采取的第一步是,我想知道如何将JavaScript数组动态地用作datalist选项。
我的代码是:
<html>
<script>
var mycars = new Array();
mycars[0]='Herr';
mycars[1]='Frau';
</script>
<input name="anrede" list="anrede" />
<datalist id="anrede">
<option value= mycars[0]></option>
<option value="Frau"></option>
</datalist>
</html>
我想填充包含datalist的输入文本字段作为数组的建议。这里我也没有考虑数组的值.实际上,我不需要两个datalist选项,而是需要dxnamic,这取决于数组的长度
7条答案
按热度按时间jjjwad0x1#
这是一个老问题,已经有了足够的答案,但我还是要在这里为那些不喜欢使用文字HTML的人提供DOM方法。
Here's the fiddle。
zzzyeukh2#
我不确定我是否清楚地理解了你的问题。不管怎样,试试这个:
utugiqy63#
如果你使用的是ES6,你可以这样做,这是Paul Walls技术与ES6语法。
x759pob24#
你可以用jQuery的方式来做--但另一方面,由于你是在服务器上处理数据,你可能会直接在那里生成HTML(只是一个建议)。
下面是一个包含此代码的JSFiddle,因此您可以立即尝试它:http://jsfiddle.net/mBMrR/
eblbsuwk5#
还有一个构造函数来创建一个选项:new Option()
jfewjypa6#
一种更高效的方法是使用fragment。
动态地将选项元素添加到
<datalist>
中,但不是添加列表中的每个项目,而是使用fragment来避免回流,并将它们呈现到DOM中一次。yfwxisqw7#
这是最高效、最简洁的方法。