2

我正在尝试将 jquery datepicker 集成到我使用脚本动态创建的输入字段中。

我的脚本就像...

function getDate(id)
{
       $('.pop-up-link').show();
        $.ajax({
        url :   'gettartDate.jav',
        data    :   'Id='+id,
        success :   function(dateStr)
                        {
                             var htmlStr = 'Start Date : <input type="text" class="datepicker" id="startDateId" value="'+dateStr.StartDate+'"/>';
                             $(".pop-info").html(htmlString);
                             $('.datepicker').datepicker({ dateFormat: 'yy-mm-dd', changeMonth: true, changeYear: true});
                        }
}

当我需要编辑数据库中的日期并向数据库添加新条目时,我正在调用此脚本。当我需要添加新条目时,我将 id 设置为 0 并返回一个空白字符串..

现在我的问题。datepicker 非常适合编辑功能。但是当我添加一个新条目时,datepicker ui 来了。但是日期没有更新到该输入字段。同样,当我发出警报以显示选定的日期时,我注意到只有日期在改变.. 年份和月份没有改变,即使我改变它

4

2 回答 2

1

这可能是因为您正在动态添加具有相同 ID 的日期选择器,我在使用动态创建的日期选择器时遇到了同样的问题。如果无论如何你可以取出 Id attr 并使用 Name attr 它应该可以工作。

所以你应该有以下

var htmlStr = 'Start Date : <input type="text" class="datepicker" name="startDateId" value="'+dateStr.StartDate+'"/>';
于 2012-11-01T10:18:16.010 回答
1

尝试在 .datepicker 上使用 refresh 方法,如下所示:

$( ".datepicker" ).datepicker( "refresh" );
于 2012-11-01T10:12:24.743 回答