0

我正在尝试将JQueryUI 的 DatePicker应用到一个节点,它适用于所有预先创建的节点,但是当我使用克隆插入新节点时,我似乎无法应用它。

下面是我创建新节点的函数。

function addActivity()
{
    var what=["spacer","mWith","mType","mDate","mWhere"];
    var newActivity;
    for(i=what.length;i>0;i--)
    {

        newActivity = document.getElementById(what[i-1]).cloneNode(true);
        insertAfter(document.getElementById("mWhere"),newActivity); 
    }

}

编辑:和我的 insertAfter 函数

function insertAfter(referenceNode, newNode) 
{
    referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
}

我正在尝试克隆的有问题的 HTML

            <tr  id="mDate">
                <td>Activity Time: </td><td><input  class="dateTimeField" id="actTime" type="text" name="meetingDate[]" /></td>
            </tr>

我试图再次运行我的 JQuery

 $(function() {
$( ".dateField" ).datepicker();
$( ".dateTimeField" ).datetimepicker();
}); 

但似乎不影响新节点

甚至尝试过

onfocus="$(this).datetimepicker();"

没有运气,有什么想法吗?

4

1 回答 1

0

弄清楚了。显然,您需要在应用日期选择器之前从节点中删除 ID 和 Class。

我添加了以下内容

        if(what[i-1]=="mDate")
        {
            $(newActivity).find('input').removeAttr('id');                  
            $(newActivity).find('input').removeAttr('class');                   
            $(newActivity).find('input').datetimepicker();
        }

   newActivity = document.getElementById(what[i-1]).cloneNode(true);
于 2013-03-08T20:08:42.443 回答