动态HTML5 Datalist

Ric*_*oss 14 jquery html5 for-loop append html-datalist

所以我有一个问题是让我的HTML5 Datalist从javascripi数组中动态填充,该数组是通过MySQL数据库中的行填充的对象的键的值填充的.唷!

MySQL Database => Table => Rows => JSON => Javascript Objects =>"firstname"&"lastname"key =>名字数组=> Datalist Options.

我成功创建了名称数组:

var nameArray = ["Rick Bross","Madison Smith","Jack Johnson"]; //Example of my array
Run Code Online (Sandbox Code Playgroud)

并设置一个循环来.append他们到datalist:

for (var i = 0; i < nameArray.length; i++) {
    alert(i + " - " + nameArray[i]); //Works Fine, "0 - Rick Bross", "1 - Madison Smith", etc.
    $('#potentials').append("<option value='" + nameArray[i] + ">"); // Not working.
}
Run Code Online (Sandbox Code Playgroud)

这是我的HTML:

<input tabindex='1' list="potentials" type="text" placeholder="First &amp; Last Name" id="name" name="name"></input>
<datalist id="potentials">
</datalist>
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么这不会填充?

kun*_*ajs 9

有一个缺少撇号,尝试:

$('#potentials').append("<option value='" + nameArray[i] + "'>");
Run Code Online (Sandbox Code Playgroud)


Kin*_*gle 5

我知道这个答案来晚了,但可能会对某人有所帮助。

var nameArray = ["Rick Bross","Madison Smith","Jack Johnson"];

将选项添加到数据列表。
-如果您需要一个ID来标识每个选项,“ attr”会有所帮助。
-“文本”是要显示的内容。

$.each(nameArray, function(i, item) { $("#potentials").append($("<option>").attr('value', i).text(item)); });