У меня есть веб-страница, использующая javascript и jquery.
Я пытаюсь динамически создавать контент с помощью цикла for.
Цикл состоит из массива объектов json. Каждый объект имеет недельную строку и целое число.
каждый цикл создает две кнопки и поле формы. Номер должен заполнить поле формы.
Когда цикл выполняется, кнопки и поля формы создаются, однако число заполняет только первое поле формы.
Он заполняется каждым номером.
, поэтому с учетом массива
var testobject = [
{
week: '9/15/20',
number: 6
},
{
week: '10/13/20',
number: 70
},
{
week: '11/17,20',
number: 34
}
];
первое поле формы будет заполнено числом 6, затем заменено на 70, а затем заменено на 34.
Скорее каждое поле формы должно иметьчисло, соответствующее его итерации в цикле for.
первое поле формы должно иметь 6, второе поле формы должно иметь 70, третье поле формы должно иметь 34
, вот код в моем цикле:
for( i = 0; i < testobject.length; i++){
console.log(testobject);
$("#forcastcontentrow").append("<div class=\"col-xs-12\">\n" +
` <p class=\"text-left text-uppercase text-muted\">wk of ${testobject[i].week}</p>\n` +
" </div>\n" +
" <div class=\"col-xs-4 m-0 p-0\">\n" +
" <button class=\"btn btn-default btn-block m-0 p-0\"><span class=\"text-uppercase text-primary\">cbi</span></button>\n" +
" </div>\n" +
" <div class=\"col-xs-4 m-0 p-0\">\n" +
" <button class=\"btn btn-default btn-block m-0 p-0\"><span class=\"text-uppercase text-muted\">custom</span></button>\n" +
" </div>\n" +
" <div class=\"col-xs-4\">\n" +
" <form class=\"form-inline\">\n" +
" <input type=\"number\"\n" +
" class=\"form-control\"\n" +
" id=\"forcasteddeplietionsinput\">\n" +
" </form>\n" +
" </div>");
document.getElementById('forcasteddeplietionsinput').value = testobject[i].number;
}
document.getElementById('forcasteddeplietionsinput').value = testobject[i].number;
выполняется внутри цикла for, поэтому я не уверен, почему это происходит. Что не так с моим подходом?