【问题标题】:Highlight start of week Javascript/JQuery UI datepicker突出显示周开始 Javascript/JQuery UI 日期选择器
【发布时间】:2011-10-15 03:40:25
【问题描述】:

我的日期选择器工作正常,并且功能齐全。

从上图中可以看出星期选择器有效。但是我希望日期选择器突出显示当前的一周。在这个例子中应该突出显示整个星期的开始。我希望看起来像这样或类似

这是怎么做到的?

已编辑 理想情况下,当页面加载时,我希望突出显示当前的一周,而不是用户自己选择一周。在提供的示例中,当前选择了日期,但我希望自动选择当前周。如下所示

【问题讨论】:

    标签: javascript jquery jquery-ui datepicker uidatepicker


    【解决方案1】:

    选中的TD 具有ui-datepicker-current-day 类,因此这可能是您想要找到的。您可以通过使用 datepicker 元素附加单击事件来突出显示,例如

    $( "#datepicker" ).datepicker().click(function(event) {
        // highlight the TR
        $(".ui-datepicker-current-day").parent().addClass('highlight');
    
        // highlight the TD > A
        $(".ui-datepicker-current-day").siblings().find('a').addClass('highlight2');
    }); 
    

    您可以随心所欲地定义highlighthighlight2 类。

    请注意,onSelect 事件不起作用,因为每次单击日期时都会刷新日历。

    这里是一个例子:http://jsfiddle.net/9DdfL/2/

    【讨论】:

    • 你提供的例子正是我想要做的
    【解决方案2】:

    日期选择器中的每一行日期都是一个<tr>。包含今天日期的 <td> 元素具有类 ui-datepicker-today
    因此,您可以搜索此元素的父元素以获取相应的 tr 并为其分配您想要的任何类:
    $(".ui-datepicker-today").parent().addClass(...)

    【讨论】:

    • 不知道父元素对应的位置。
    • 父元素是<tr>,其中包含您以绿色突出显示的行。我建议你使用 firebug 或其他一些开发工具来检查你自己的 html 标记。
    • 我使用 firebug 检查了 html,我知道每周都是分开的 int 。我已经进一步编辑了我的帖子以解释我想要做什么。
    • 通常使用普通的日期选择器,用户必须选择一天。但是,我希望在加载页面之前选择当前周。这可能吗
    • 你是什么意思'选中'?您希望datepicker('getDate') 的结果是日期范围吗?
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签