Javascript 页面中存在多个日期选择器的问题
我正在我的页面中使用引导日期选择器 我使用它的表单动态生成了多个日期选择器 现在的情况是,当您单击第一个输入元素并选择date时,它将对该输入字段起作用 现在添加另一个元素并单击该输入字段。日期选择器未正确初始化 如果首先添加元素并单击输入,则效果良好 这是我到目前为止试过的Javascript 页面中存在多个日期选择器的问题,javascript,jquery,html,twitter-bootstrap,datepicker,Javascript,Jquery,Html,Twitter Bootstrap,Datepicker,我正在我的页面中使用引导日期选择器 我使用它的表单动态生成了多个日期选择器 现在的情况是,当您单击第一个输入元素并选择date时,它将对该输入字段起作用 现在添加另一个元素并单击该输入字段。日期选择器未正确初始化 如果首先添加元素并单击输入,则效果良好 这是我到目前为止试过的 $(function() { var addMilIterator = 0; $(document).on('click', '[data-ele="addMil"]', function(e) { var
$(function() {
var addMilIterator = 0;
$(document).on('click', '[data-ele="addMil"]', function(e) {
var clone = $('.milestones-form').first().clone(true);
$(clone).find('[name]').each(function() {
var name = $(this).attr('name');
$(this).val("");
$(this).attr('name', name + '_' + addMilIterator);
});
addMilIterator++;
$('.milestones-form').last().after(clone);
});
$(document).on('focus', '[name^="date"]', function() {
$(this).datepicker({
})
});
});
如果有帮助的话,我已经为它制作了一把小提琴。任何暗示都行。
请不要因为我的编辑能力差就发表负面评论。谢谢大家…您必须确保正确克隆输入<代码>克隆(错误)
请检查这是因为您在单击时创建的每个克隆都具有相同的
id
值,即沙箱容器
属性id
应该是唯一的,以便功能正常工作
解决方案
在创建克隆时的单击事件中,还可以生成并附加一个唯一的id
值,如下所示
var clone = $('.milestones-form').first().clone().prop('id', 'sandbox-container'+ num++ );
在此之前,您需要在单击事件外部初始化num
。所以整个JQuery代码看起来像
$(function() {
var addMilIterator = 0;
var num = 1;
$(document).on('click', '[data-ele="addMil"]', function(e) {
var clone = $('.milestones-form').first().clone().prop('id', 'sandbox-container'+ num++ );
$(clone).find('[name]').each(function() {
...
...
我认为这可能会对您有所帮助,您可能需要稍微更改代码,但这应该正是您所需要的-确实如此。
$(function() {
var addMilIterator = 0;
var num = 1;
$(document).on('click', '[data-ele="addMil"]', function(e) {
var clone = $('.milestones-form').first().clone().prop('id', 'sandbox-container'+ num++ );
$(clone).find('[name]').each(function() {
...
...