Javascript 如何对具有相同Id的不同元素使用datetimepicker()
在我的代码中,将使用jQuery动态生成某个div元素。因此,我使用.html()获取了该div元素的一个副本,并将其追加。现在,在div中,我有一个date字段,我必须使用datetimepicker()。现在我发现,datetimepicker不适用于具有相同ID的不同元素 下面是一个演示片段Javascript 如何对具有相同Id的不同元素使用datetimepicker(),javascript,jquery,html,datetimepicker,bootstrap-datetimepicker,Javascript,Jquery,Html,Datetimepicker,Bootstrap Datetimepicker,在我的代码中,将使用jQuery动态生成某个div元素。因此,我使用.html()获取了该div元素的一个副本,并将其追加。现在,在div中,我有一个date字段,我必须使用datetimepicker()。现在我发现,datetimepicker不适用于具有相同ID的不同元素 下面是一个演示片段 <!--testing--> <div id='testdate'> <div class='input-group date'
<!--testing-->
<div id='testdate'>
<div class='input-group date' id='recoverydate2'>
<input type='text' class="form-control" placeholder="Select year" id="rcv_date" name="year" value="<?php echo $gde_date;?>" />
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
<!-- <div class='input-group date' id='recoverydate2'>
<input type='text' class="form-control" placeholder="Select year" id="rcv_date" name="year" value="<?php echo $gde_date;?>" />
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div> -->
</div>
<!--testing-->
虽然我试过让这两种方法都起作用,但都不起作用
$('#testdate #recoverydate2:eq(0)').datetimepicker({
format: 'DD-MM-YYYY'
});
$('#testdate #recoverydate2:eq(1)').datetimepicker({
format: 'DD-MM-YYYY'
});
具有相同ID的多个元素不是有效的HTML。这就是
class
存在的原因!也就是说,您可以使用新id创建div
的副本
例如:
$('#testdate').append(
'<div class="input-group date" id="recoverydate2-generated">' +
$('#recoverydate2').html() +
'</div>'
);
$('#testdate')。追加(
'' +
$('#recoverydate2').html()+
''
);
我希望这有帮助 你没有。HTML中的id应该是唯一的。id应该是唯一的,难道你不能修改生成的id使其不同吗?我也在考虑它,但实际上这个div只是为了测试我必须生成的实际div,如果你想看到它的全部,它是相当大的。因此,当我克隆整个div时,我无法到达内部div,在那里我将更改ID。顺便问一下,是否可以使用相同的类来代替ID?在这种情况下有效吗?是的,同样的课程可以。但是你必须小心不要在其他地方使用这个类。不,实际上我不能这样做,因为这段代码只是为了测试我必须生成的实际div,如果你想看到整个div,我可以预测它。因此,当我克隆整个div时,我无法到达我要更改ID的内部div。
$('#testdate').append(
'<div class="input-group date" id="recoverydate2-generated">' +
$('#recoverydate2').html() +
'</div>'
);