Javascript 在嵌套循环中动态添加和删除元素

Javascript 在嵌套循环中动态添加和删除元素,javascript,nested-loops,Javascript,Nested Loops,我想在日期范围列表中创建一个时间范围的动态列表,并为每个生成的ul和li指定一个特定的类/id 这就是我走了多远。它给出了一个错误,newElement为null!我看到了一些关于生成行的答案,但是您不能给它们一个特定的类/id 我更喜欢这种方式,因为你可以控制每个ul和li var list=document.getElementById('date'); var add=document.getElementById('add'); //向列表中添加新元素 addDate.addEvent

我想在日期范围列表中创建一个时间范围的动态列表,并为每个生成的ul和li指定一个特定的类/id

这就是我走了多远。它给出了一个错误,newElement为null!我看到了一些关于生成行的答案,但是您不能给它们一个特定的类/id

我更喜欢这种方式,因为你可以控制每个ul和li

var list=document.getElementById('date');
var add=document.getElementById('add');
//向列表中添加新元素
addDate.addEventListener('click',function(){
var newElement=document.createElement('LI');
list.appendChild(新元素);
var i;

对于(i=1;i您正在创建多个时间段,但您只选择了一个:

var timeframe=document.getElementById('timeframe');

您需要做的是为每个循环选择特定的时间框架:

var timeframe=document.getElementById('timeframe-'+[i]);

var list=document.getElementById('date');
var add=document.getElementById('add');
//向列表中添加新元素
addDate.addEventListener('click',function(){
var newElement=document.createElement('LI');
list.appendChild(新元素);
var i;

对于(i=1;i您需要彻底解释您的答案,而不仅仅是转储代码。是的,对不起,我是新来的。我编辑了1行代码:var timeframe=document.getElementById('timeframe-'+[i]);@PiotrSzulc您可以编辑您的答案并在其中添加解释:)如果您只更改了一行,则无需再次提供所有内容。@PiotrSzulc感谢您的回答,但如果您尝试代码,添加第二个日期框,然后返回第一个日期框,则会添加10个时间框,这是不对的。它应该添加1个时间框。您的列表不尊重html语法