Был недостающий апостроф, попробуйте:
$('#potentials').append("<option value='" + nameArray[i] + "'>");
Поэтому у меня возникает проблема с тем, что мой динамик HTML5 динамически заполняется динамически из массива javascripi, который заполняется из значений ключа объекта, который заполняется через строки в базе данных MySQL. Уф!
База данных MySQL => Таблица => Строки => JSON => Объекты Javascript => "firstname" & "lastname" key => Массив с именами => Параметры Datalist.
Я успешно создал массив имен:
var nameArray = ["Rick Bross","Madison Smith","Jack Johnson"]; //Example of my array
И настройте цикл для .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.
}
Вот мой HTML:
<input tabindex='1' list="potentials" type="text" placeholder="First & Last Name" id="name" name="name"></input>
<datalist id="potentials">
</datalist>
Кто-нибудь знает, почему это не заполняется?
jquery,html5,for-loop,append,html-datalist,
Я знаю, что этот ответ задерживается, но это может помочь кому-то.
var nameArray = ["Rick Bross","Madison Smith","Jack Johnson"];
Добавьте параметры в datalist.
- «attr» помогает, если вам нужен идентификатор, чтобы идентифицировать каждый параметр.
- «текст» - это контент, который будет отображаться.
$.each(nameArray, function(i, item) { $("#potentials").append($("<option>").attr('value', i).text(item)); });
Попробуйте $ («потенциалы datalist #) .append ...