jQuery datepicker,对话框 - 滚动到所选日期的位置

时间:2013-03-20 23:16:26

标签: dialog scroll datepicker

问题:滚动到jQuery对话框中的特定位置

我的网站上有一个内联日期选择器,显示当前的月历。 如果用户点击我正在显示来自Feed的日历事件列表的任何日期。

代码如下:

<div id="datepicker" style="font: 80% 'Trebuchet MS', sans-serif;"></div>
                            <script  type="text/javascript">
                                var caldate;
                                $("#datepicker").datepicker();
                                $("#datepicker").change(function() {
                                    caldate = $(this).val(); 

                                    $("#dialog").dialog({
                                        bgiframe: true,
                                        maxHeight: 450,
                                        width: 600,
                                        modal: true,
                                        draggable: true,
                                        resizable: false,
                                        position: 'center',
                                        show: { effect: "fade", duration: 600 },
                                        hide: { effect: "fade", duration: 600 }
                                    });
                                });
                            </script>
                            <div id="dialog" title="Calendar Events">DisplayFeed("Calendar Events")</div>

DisplayFeed从html助手类中检索数据,数据显示正确。

现在的障碍是用户在内联日期选择器中选择特定日期。 我需要从对话框中的列表滚动到选定日期发生的事件。

我试图在div对话框中获取html。当我尝试使用document.getElementByID(“#dialog”)时,我将错误视为未定义.innerHTML将dater与选择期间捕获的caldate进行比较。

任何想法让我走向正确的方向都会有很大的帮助。

谢谢。

1 个答案:

答案 0 :(得分:0)

通过添加事件日期生成的特殊div ID解决问题(将日期转换为Linux时间戳并添加到div作为ID),对于每个事件。

然后滚动到所选日期发生的事件,方法是将所选日期转换为Linux时间戳并在javascript中使用document.getElementById(linuxtimestamp.toString()).scrollIntoView()