发生这种情况是因为类ID '.hasDatepicker'
在更改ID后仍然存在于输入上。由于类datepicker不会重新启动。
添加html之前删除类将解决您的问题。
var dateHMTL = 'Date 1<input id="dt1" class="dt" /><br/>Date 2<input id="dt2" class="dt" /><br/>Date 3<input id="dt3" class="dt" /><br/>Date 4<input id="dt4" class="dt" /><br/>Date 5<input id="dt5" class="dt" />'
$(function() {
$(document).on('focus', ".dt", function() {
$(this).datepicker();
});
$(document).on("click", "#btn", function (e) {
e.preventDefault();
dateHMTL = $("#theDIV").html();
dateHMTL=dateHMTL.replace(/Date (\d+)/g,"Date 1$1");
dateHMTL=dateHMTL.replace(/dt(\d+)/g,"dt1$1");
dateHMTL=dateHMTL.replace(/hasDatepicker/g,"");
$("#theDIV").html(dateHMTL);
});
$("#theDIV").html(dateHMTL)
});
看看这个工作fiddle