我有一个gridview作为一个表格呈现.我有一个"添加"按钮并单击它,它将在表格中创建一个新行.在jQuery中使用"clone(true)"方法完成行创建.克隆的行是一个隐藏在gridview中的虚拟行.我为TextBox分配了jQuery DatePicker.它适用于现有行.但是,当我为新添加的行单击DatePicker文本框时,它不会打开.它为现有行打开.可能是什么问题?
我的代码是这样的:
$("input[name $= 'txtDateOrdered']").datepicker({
showButtonPanel : true
, showOn : 'button'
, buttonImageOnly : true
, buttonImage : '../../Image/calendar.gif'
});
Run Code Online (Sandbox Code Playgroud)
miy*_*iya 11
您必须首先从克隆元素中删除"hasDatepicker"类.
$(".selector").removeClass('hasDatepicker').datepicker({
showButtonPanel : true
, showOn : 'button'
, buttonImageOnly : true
, buttonImage : '../../Image/calendar.gif'
});
Run Code Online (Sandbox Code Playgroud)
很难说看到你的代码,但..
这可能是由于在页面加载时调用了用于将datepicker分配给输入的jquery.因此,当您克隆输入时,新克隆的输入没有连接到它的datepicker(因为它在页面加载时不存在).
调用clone方法后,您需要将datepicker连接到新输入.