我创建了一个 jQuery 日期范围选择器。我能够选择日期范围并将它们显示在文本框中。现在我需要的是,我需要禁用某些日期并为这些日期分配不同的类。
E.g. I must be able to give class A to April 2, class B to April 4 etc.
我已经尝试了我在谷歌搜索时得到的结果,但没有任何帮助。我想要做的是传递一些应该分配给这些日期的日期和类(class)。该类应该分配给那些日期,而且我必须可以选择启用或禁用这些日期。
接下来我要尝试做的是,如果两个日期之间存在禁用日期,则无法选择该范围。
E.g. Suppose I want to select April 2 to April 7 and April 5 is a disabled date.
Then I could be able to select either April 2 to April 4 or April 6 to April 7.
这意味着只能选择一个范围。请帮忙解决这个问题。
请找到 fiddle here :
最佳答案
您必须创建两个数组,一个将 css 类映射到您要禁用的每个日期 class:date
,另一个将 css 类映射到您要指定的日期特殊类,然后:
- 在
beforeShowDay
中,检查日期是否在禁用日期数组中,如果找到,则使用关联的类并返回 false,示例:[false,"classA"]
,如果不是,检查特殊数组并返回带有 true 的类,否则就做你现在正在做的任何事情。 - 在
onSelect
中,检查所选范围是否包含数组中的任何日期并采取相应行动 - 然后在
class:date
数组中,您可以添加任何您希望用其自己的类禁用的class:date
,代码将处理它<
完整的工作解决方案 here .
注意事项:
- 代码禁用了 4 月 22 日和 5 月 15 日(尝试调整日期)
- 代码为 4 月 15 日和 5 月 10 日指定了一个特殊的类。
- css 类在
td
上作为background-color
应用,它显示不正确,您必须修改选择器的 css 才能做到 - 帮助我提供这个答案的引用是 here
关于javascript - 更改 jQuery 日期范围选择器以禁止包含禁用日期的日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22979341/