RadGrid 中的 RadDatePicker
Posted
技术标签:
【中文标题】RadGrid 中的 RadDatePicker【英文标题】:RadDatePicker in RadGrid 【发布时间】:2012-07-09 13:36:51 【问题描述】:我正在使用 Telerik RadGrids,并且我有 RadDatePickers 用于日期时间类型的列。但是,当我想选择一个日期时,它根本不起作用。没有错误,但它根本不起作用。我注意到奇怪的是我可以选择更多天,但我希望能够通过在给定日期单击一次来选择一天。
我观察到,当点击上个月/下个月时,我可以完全按照自己的意愿选择一天,所以有一个 hack 可能会起作用(在我的研究中,它在第一次回发之后完美运行,但在第一次回发它根本不起作用):
Public Sub PageInit(ByVal sender As Object, ByVal e As
System.EventArgs)
Me.Page.ClientScript.RegisterStartupScript(GetType(TTControls.TTAjaxState),
"Page_Init_" & Me.UniqueID, "if (!(hasEndRequest)) var hasEndRequest =
false; if (!(hasEndRequest)) var prm =
Sys.WebForms.PageRequestManager.getInstance();prm.add_endRequest(function()
$('.rcPrev').click();console.log('clicked');); hasEndRequest =
true;", True)
End Sub
在上面的代码中,您可以看到一个方法,它将成为页面初始化的处理程序。
但是,我非常希望能够通过单击 RadDatePicker 并单击一天来选择一天。这是我的 RadDatePicker 的样子:
如果有人知道解决方案并决定与我分享(如果解决方案不是 hack,那么我会非常高兴)我会非常高兴。
提前谢谢你, 拉霍斯阿尔帕德。
【问题讨论】:
【参考方案1】:将RadDateTimePicker
替换为RadCalendar
是否需要大量工作?
RadCalendar
支持属性SelectionMode
..
【讨论】:
我认为这需要大量的精力,但也许我可以找到一个通用的解决方案,但是,完全不能保证这对于这个项目是可能的或可行的,我们会必须考虑一下。我赞成你的回答,因为它分享了有用的信息(非常感谢你),但我不能接受它,因为它不是问题的解决方案,它提供了一种可能的替代方案。 嗯...你的答案可能很好,我会试试这个逻辑:CType(currentControl, RadDatePicker).Calendar.RangeSelectionMode = Telerik.Web.UI.Calendar.RangeSelectionMode.None 不,这没有帮助。我还尝试了以下属性:EnableRepeatableDaysOnClient 和 EnableMultiSelect(通过将它们设置为 false) 别无选择,只能在添加新选择之前清除任何选择的 javascript OnClientClick 事件..? 我希望有一个比你之前命令中提到的更优雅的选择,但我持怀疑态度。【参考方案2】:您是否将SelectionMode
属性设置为Single
?
【讨论】:
我没有看到 RadDatePicker 实例的 SelectionMode 属性。我怎样才能访问它?【参考方案3】:解决方案:
Sys.Application.add_load(function ()
$(".RadCalendar.RadCalendar_Default .rcPrev").each(function () $(this).click(); );
);
【讨论】:
以上是关于RadGrid 中的 RadDatePicker的主要内容,如果未能解决你的问题,请参考以下文章
Radgrid VS Gridview - SQL 查询比较