我克隆了一个HTML表格行并将其附加到表格末尾。其中一个字段是开始日期。我想将jQuery UI日期选择器添加到克隆的行,但我无法使其工作。在.clone之后,在它附加到表的末尾之前,输入和选择元素id和name属性都加1。在模板行中,我将datepicker添加到idStartDate,并且在克隆/追加新ID时会是idStartDate_(行号)。 $(element).datepicker()不应该工作吗?当我在克隆行的chrome中执行一个检查元素时,它已经分配了hadDatepicker类,但我仍然无法让选择器激活。克隆后的jQuery UI日期选择器分配
$("#addRow").click(function() {
count++;
$("#rowCount").val(count);
var $clone = $("#ids tbody tr:first").clone();
$clone.attr({
id: "emlRow_" + count,
name: "emlRow_" + count,
style: ""
});
$clone.find("input,select").each(function(){
$(this).attr({
id: $(this).attr("id")+"_" + count,
name: $(this).attr("name")+"_" + count
});
});
$("#ids tbody").append($clone);
var element = "idStartDate_"+count;
$(element).datepicker();
})
字符串'element'是否有正确的CSS选择器?比如'#idStartDate_3'(用'#')来正确选择元素?另一种选择可能是点击处理程序未正确绑定到DOM上的新元素。您也可以在Chrome的开发工具面板中检查点击附件。 –
模板和克隆行的样式相同。如何检查Chrome中的单击附件? –
当您打开Inspector时,请转至顶部的'Sources'选项卡。然后,在右侧,您会看到“Event Listener Breakpoints”。展开,展开'Mouse',并选中'click'旁边的复选框。然后,点击一下。如果附加了点击处理程序,JavaScript将暂停,您将看到在“Sources”选项卡中突出显示的相关处理代码。 –