在动态表上添加带有Jquery的日历datepicker

时间:2010-04-13 09:52:35

标签: jquery

我正在尝试在创建时将Jquery日历选择器添加到文本框中,但我无法找到。

当我按下一个按钮时,它会创建一个表,我想要附加Jquery日历选择器的元素是:

var txtDate = createTextInput(i, "txtDate", 8, 10);
txtDate.className  = "datepicker";
this.newcells[i].appendChild(txtDate);

我最后尝试添加:

txtDate.datepicker();

但是不起作用。有人可以帮忙吗?

感谢。

注意:CreateTextInput是:

function createTextInput(i, strName, size, maxLength) {
    var input = document.createElement('<input>');
    input.type = "text";
    input.name = strName;
    input.id = strName + i;
    input.size = size;
    input.maxLength = maxLength;

    return input;
}

3 个答案:

答案 0 :(得分:1)

如果createTextInput返回一个普通的DOM节点而不是jQuery对象,则需要对结果使用$()

$(txtDate).datepicker();

答案 1 :(得分:1)

$(txtDate).datepicker();

答案 2 :(得分:1)

使用

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

而不是

txtDate.datepicker();

您可以轻松地使用jQuery创建元素。像

这样的东西
$("<input type='text' />").attr("id", '').appendTo("yourelement");

你可以在jQuery

中重写这样的createtextinput函数
function createTextInput(i, strName, size, maxLength) {
    return $("<input />".attr({
        type: 'text',
        name: strName,
        id: strName + i,
        size: size,
        maxLength: maxLength
    });    
}

如果要返回jQuery对象,则可以直接调用datepicker(),如

txtDate.datepicker();