0

我有一个日期选择器功能,应该将输入字段转换为日期选择器。它运行这样的东西;

function activateDatePicker(id){
    $(function() {
            $(id).datepicker({
                defaultDate: "+1w",
                dateFormat: "yy-mm-dd",
                changeMonth: true,
                changeYear: true,
                numberOfMonths: 3,
            });
    });
}

另一个函数将创建必要的输入标记并调用 activateDatePicker 函数以将其转换为 jquery datepicker,例如

function createInputTag(input){
    document.getElementById("sometag").innerHTML = 
                                  "<input id="+input+" />";
    activateDatePicker(input);
}

该输入可以是任何内容,我将使用 createInputTag 创建多个日期选择器,每个都有不同的 ID。目前它什么也没做,控制台也没有显示任何错误。有谁知道为什么?我能做些什么来解决它?我希望有一个 javascript 的解决方案,但 jquery 也很好。

4

2 回答 2

1

您的选择器不正确

 $(id).datepicker({

应该

  $('#'+id).datepicker({

也输入..

 "<input id="+input+" />";

在 HTML 中,<input>标签没有结束标签。

我不认为你需要在函数中使用 ready 函数......

于 2012-12-03T12:02:49.850 回答
1

除了@bipen 的回复,您可能不应该使用 $(function(){...}); 在你的函数里面:

function activateDatePicker(id)
{
        $(id).datepicker({
            defaultDate: "+1w",
            dateFormat: "yy-mm-dd",
            changeMonth: true,
            changeYear: true,
            numberOfMonths: 3,
        });   
}
于 2012-12-03T12:14:44.867 回答