共享点项目的日期时间选择器

时间:2012-03-31 10:29:53

标签: sharepoint datetimepicker

有没有人有关于如何将日期时间选择器放入sharepoint项目的示例? 更具体地说,将日期时间选择器放在gridview中.. 我一直在谷歌搜索几个小时仍然找不到有效的例子.. 大多数示例适用于普通的Web项目,而不适用于sharepoint项目..

和btw我已经尝试将datetimecontrol放在gridview中,但它也不能正常工作。

提前致谢。

2 个答案:

答案 0 :(得分:1)

我喜欢使用jQuery UI&#39的Datepicker:

http://jqueryui.com/demos/datepicker/

要在GridView中实现,我通常会创建一个可编辑的文本框,并将该类应用于它,这将调用datepicker:

        <asp:GridView ID="gvClientDetails" runat="server">
            <Columns>
                <asp:TemplateField HeaderText="Date">
                    <EditItemTemplate>
                        <asp:TextBox runat="server" ID="myTextBox" CssClass="dateTextBox" />
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="myLabel" runat="server" Text='<%# Eval("myDate") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>

然后使用以下javascript(在您的网页或网站上注册):

$('.dateTextBox').each(function () {
    $(this).datepicker(
        {
            changeMonth: true,
            changeYear: true,
            dateFormat: 'yy/mm/dd'
        });
})

至于将这样的内容应用到您的sharepoint网站,这应该可以帮助您:

http://blogs.lessthandot.com/index.php/WebDev/UIDevelopment/Javascript/adding-a-jquery-date-picker-to-sharepoint

答案 1 :(得分:0)

只需使用通用标准SP DateTimeControl。

这就是我们的做法:

/// <summary>
/// Get common SP DateTimeControl with current DateOnly settings and MethodToProcessDateChanged
/// </summary>
public static DateTimeControl Cd(this bool DateOnly, bool AutoPostBack = false,
DateTime? SelectedDate = null, Func<bool> MethodToProcessDateChanged = null)
{
     var d = new DateTimeControl();
     d.DateOnly = DateOnly;
     d.AutoPostBack = AutoPostBack;
     if (SelectedDate != null)
     d.SelectedDate = SelectedDate.Value;
     if (MethodToProcessDateChanged != null)
          d.DateChanged += (o, e) => { MethodToProcessDateChanged();};
     return d;
}

通过一些常用用法示例here

查看更多详细信息