Javascript jQuery datepicker未显示在html中动态生成的输入字段中

Javascript jQuery datepicker未显示在html中动态生成的输入字段中,javascript,php,jquery,html,jquery-ui-datepicker,Javascript,Php,Jquery,Html,Jquery Ui Datepicker,我有两个输入字段,一个直接编码在html页面中,另一个通过JavaScript追加,我已经为两个具有不同id的字段初始化了jQuery datepicker 我正在使用jQueryUIDatePicker html页面中的一个输入字段 <input id="datepicker1" name="" type="text" value=""class="form-control" placeholder="dd/mm/yyyy"> 通过javascript代码进行附加的其他步骤

我有两个输入字段,一个直接编码在html页面中,另一个通过JavaScript追加,我已经为两个具有不同id的字段初始化了jQuery datepicker

我正在使用jQueryUIDatePicker

html页面中的一个输入字段

<input id="datepicker1" name="" type="text" value=""class="form-control" placeholder="dd/mm/yyyy"> 

通过javascript代码进行附加的其他步骤

   var datepicker2 = '<div class="control-group"> <label class="control-label">Cheque Date</label><div class="controls"> <input placeholder="DD/MM/YYYY" id="datepicker2" name="" type="text" onkeyup="" class="form-control"> </div> </div>'
   $("#drop1").html(datepicker2); 


  $( "#datepicker1" ).datepicker();

  $( "#datepicker2" ).datepicker();
var datepicker2='支票日期'
$(“#drop1”).html(datepicker2);
$(“#datepicker1”).datepicker();
$(“#datepicker2”).datepicker();
问题是datepicker在html页面中显示为静态输入字段,而在通过JavaScript追加时未显示为动态字段


是否可以初始化动态生成字段的日期选择器?

请尝试以下代码

向输入字段添加一个公共类
.date\u picker
,并添加以下javascript

$('body').on("click", ".date_picker", function(){
  $(this).datepicker();
});​

请尝试以下代码

向输入字段添加一个公共类
.date\u picker
,并添加以下javascript

$('body').on("click", ".date_picker", function(){
  $(this).datepicker();
});​

似乎您从未将datepicker2添加到文档中。如果是这样的话,你必须称之为这样的事情

$('body').append(datepicker2);//You may replace 'body' with '#drop2' or whatever is your container
以前

$( "#datepicker2" ).datepicker();

请参阅:

您似乎从未将datepicker2添加到文档中。如果是这样的话,你必须称之为这样的事情

$('body').append(datepicker2);//You may replace 'body' with '#drop2' or whatever is your container
以前

$( "#datepicker2" ).datepicker();

请参阅:

将启动日期选择器的代码包装在
$(document.ready()
中。问题是您试图在呈现元素之前访问该元素。这些字段显示在模式(弹出窗口)中。使用
.datepicker(“刷新”)
可能会解决您的问题。问题是调用
.datepicker()
时,元素未呈现。检查元素是否存在,然后初始化它将启动日期选择器的代码包装在
$(document.ready()
中。问题是您试图在呈现元素之前访问该元素。这些字段显示在模式(弹出窗口)中。使用
.datepicker(“刷新”)
可能会解决您的问题。问题是调用
.datepicker()
时,元素未呈现。检查元素是否存在,然后对其进行初始化每次调用
.date\u picker
时,您都在创建日期选择器。您应该只调用一次。每次调用
.date\u picker
时,您都在创建日期选择器。你应该只叫它一次。