Maison  >  Article  >  interface Web  >  Plug-in de calendrier JQuery My97DatePicker plage de dates limit_jquery

Plug-in de calendrier JQuery My97DatePicker plage de dates limit_jquery

WBOY
WBOYoriginal
2016-05-16 15:19:111423parcourir

L'exemple de cet article vous présente la méthode de restriction de plage de dates du plug-in de calendrier JQuery My97DatePicker et le partage avec vous pour votre référence. Le contenu spécifique est le suivant

.

```c497a33d8112adf7039c76f5cf8ee6b8

Ce qui suit met en évidence les restrictions relatives à la plage de dates :
1) Restrictions statiques
Vous pouvez limiter la plage de dates en configurant minDate (date minimale) et maxDate (date maximale) comme valeurs de date statiques
Exemple 1.1 : La plage de dates restreinte va du 1/12/2012 au 20/12/2012

Copier le code Le code est le suivant :
```eec61ef281a36442fe532298533cf569

Exemple 1.2 : La plage de dates restreinte va du 2012-12-4 21:30:00 au 2012-12-4 23:59:30

Copier le code Le code est le suivant :
``` d1a3660023d7a910e10bf3e60fea8fea

Exemple 1.3 : La plage de dates restreinte va de décembre 2012 à décembre 2013

Copier le code Le code est le suivant :
``` 9fc13b11ce76d18a2891a6d2750c95cf

Exemple 1.4 : La plage horaire limitée est de 9h00:00 à 18h30:00

Copier le code Le code est le suivant :
``` 93cf2c8cd9221a09b55b38504545f888

2) Restrictions dynamiques
Vous pouvez limiter la plage de dates grâce à des variables dynamiques données par le système, telles que %y (année en cours), %M (mois en cours), etc. Vous pouvez également utiliser {} pour effectuer des opérations d'expression, telles que : {%d 1 } : signifie demain

Description du format
%y année en cours
%M mois en cours
%d jour en cours
%ld Dernier jour du mois
%H temps actuel
%m score actuel
%s seconde actuelle
{} Expression d'opération, telle que : {%d 1} : signifie demain

F{}{} est une fonction qui peut écrire du code JS personnalisé
Exemple 2.1 : Seules les dates antérieures à aujourd'hui (y compris aujourd'hui) peuvent être sélectionnées

Copier le code Le code est le suivant :
319c319849b5a106878ed8e1a94bead6

Exemple 2.2 : utilise une expression d'opération Seules les dates après aujourd'hui peuvent être sélectionnées (hors aujourd'hui)

Copier le code Le code est le suivant :
```5b51708567172f443f9848e250f8ee39

Exemple 2.3 : Seules les dates du 1er au dernier jour de ce mois peuvent être sélectionnées

Copier le code Le code est le suivant :
``` 1f857728641a86edc290a4d8d594b14e

Exemple 2.4 : Seules les dates de 7h00 aujourd'hui à 21h00 demain

peuvent être sélectionnées

Copier le code Le code est le suivant :
``` ab291fd82f734db9add33736f2d85de7

Exemple 2.5 : utilise une expression d'opération et ne peut sélectionner que des dates comprises entre 20 heures et 30 heures plus tard

Copier le code Le code est le suivant :
``` 7e823c2eb6b3872fa4574e74cb55ab85

3) Restrictions de personnalisation des scripts
Le système fournit deux API, $dp.$D et $dp.$DV, pour vous aider dans les opérations de date. De plus, vous pouvez également faire ce que vous voulez en remplissant votre script personnalisé dans #F{} Restrictions de date<.>
Exemple 3.1 : La date précédente ne peut pas être supérieure à la date suivante et aucune des deux dates ne peut être supérieure au 01/10/2020 Du au

```<input id="d4311" class="Wdate" type="text" onFocus="WdatePicker({maxDate:'#F{$dp.$D(\'d4312\')||\'2020-10-01\'}'})"/>

```<input id="d4312" class="Wdate" type="text" onFocus="WdatePicker({minDate:'#F{$dp.$D(\'d4311\')}',maxDate:'2020-10-01'})"/>

Exemple 3.2 : La date précédente 3 jours ne peut être supérieure à la date suivante

```<input type="text" class="Wdate" id="d4321" onFocus="WdatePicker({maxDate:'#F{$dp.$D(\'d4322\',{d:-3});}'})"/>

```<input type="text" class="Wdate" id="d4322" onFocus="WdatePicker({minDate:'#F{$dp.$D(\'d4321\',{d:3});}'})"/>

Exemple 3.3 : La date précédente de mars et 2 jours ne peut pas être supérieure à la date suivante et les dates précédentes ne peuvent pas être supérieures à 2020-4-3 moins mars et 2 jours de la date suivante La date ne peut être supérieure au 2020-4-3

<input type="text" class="Wdate" id="d4331" onFocus="WdatePicker({maxDate:'#F{$dp.$D(\'d4332\',{M:-3,d:-2})||$dp.$DV(\'2020-4-3\',{M:-3,d:-2})}'})"/>
<input type="text" class="Wdate" id="d4332" onFocus="WdatePicker({minDate:'#F{$dp.$D(\'d4331\',{M:3,d:2});}',maxDate:'2020-4-3'})"/>

Exemple 3.4 : Utilisez vos talents JS pour définir les restrictions de dates que vous souhaitez Accédez automatiquement à un jour généré aléatoirement, bien sûr, cet exemple n'a aucune utilité pratique, juste à des fins de démonstration

<script>
//返回一个随机的日期
function randomDate(){
var Y = 2000 + Math.round(Math.random() * 10);
var M = 1 + Math.round(Math.random() * 11);
var D = 1 + Math.round(Math.random() * 27);
return Y+'-'+M+'-'+D;
}
</script>
<input type="text" class="Wdate" id="d434" onFocus="var date=randomDate();WdatePicker({minDate:date,maxDate:date})"/>

4) Limite de jours invalide Vous pouvez utiliser cette fonction pour désactiver les dates correspondant du dimanche au samedi. Attributs associés : DisabledDays (0 à 6 représentent respectivement du dimanche au samedi)

Exemple 4.1 : Désactiver la date correspondant au samedi

Copier le code Le code est le suivant :
``` bd68db6acf61952842081a6ed1995811

Désactivez les dates correspondant au samedi et au dimanche

Copier le code Le code est le suivant :
``` 3de09025c2e9e9be27ee6004b147b60f

5)无效日期限制
可以使用此功能禁用,所指定的一个或多个日期,只要熟悉正则表达式,可以尽情发挥
用法(正则匹配):
如果你熟悉正则表达式,会很容易理解下面的匹配用法
如果不熟悉,可以参考下面的常用示例
['2008-02-01','2008-02-29'] 表示禁用 2008-02-01 和 2008-02-29
['2008-..-01','2008-02-29'] 表示禁用 2008-所有月份-01 和 2008-02-29
['200[0-8]]-02-01','2008-02-29'] 表示禁用 [2000至2008]-02-01 和 2008-02-29
['^2006'] 表示禁用 2006年的所有日期
此外,您还可以使用 %y %M %d %H %m %s 等变量, 用法同动态日期限制 注意:%ld不能使用
['....-..-01','%y-%M-%d'] 表示禁用 所有年份和所有月份的第一天和今天
['%y-%M-{%d-1}','%y-%M-{%d+1}'] 表示禁用 昨天和明天
当然,除了可以限制日期以外,您还可以限制时间
['....-..-.. 10\:00\:00'] 表示禁用 每天10点 (注意 : 需要 使用 \: )
示例5.1:禁用 每个月份的 5日 15日 25日

```<input id="d451" type="text" class="Wdate" onFocus="WdatePicker({disabledDates:['5$']})"/>

//注意 :'5$' 表示以 5 结尾 注意 $ 的用法

示例5.2:禁用 所有早于2000-01-01的日期

```<input id="d452" type="text" class="Wdate" onFocus="WdatePicker({disabledDates:['^19']})"/>

//注意:'^19' 表示以 19 开头 注意 ^ 的用法
//当然,可以使用minDate实现类似的功能 这里主要是 在演示 ^ 的用法

示例5.3:配合min/maxDate使用,可以把可选择的日期分隔成多段

复制代码 代码如下:
```53e60a15468830d4329ad1952005eefd

示例5.4:min/maxDate disabledDays disabledDates 配合使用 即使在要求非常苛刻的情况下也能满足需求

复制代码 代码如下:
```29151a5934df15421c42f14f3d648fb9

示例5.5:禁用前一个小时和后一个小时内所有时间 使用 %y %M %d %H %m %s 等变量

复制代码 代码如下:
```afc6f13f26c3c683fa8da38d78e5b51a

示例5.6: #F{}也是可以使用的
本示例利用自定义函数 随机禁用0-23中的任何一个小时
打开小时选择框,你会发现有一个小时被禁用的,而且每次禁用的小时都不同

<script>
function randomH(){
//产生一个随机的数字 0-23
var H = Math.round(Math.random() * 23);
if(H<10) H='0'+H;
//返回 '^' + 数字
return '^'+H;
}
</script>
<input type="text" class="Wdate" id="d456" onFocus="WdatePicker({dateFmt:'HH:mm:ss',disabledDates:['#F{randomH()}']})"/>

6)有效日期
使用无效日期可以很方便的禁用不可用的日期,但是在只需要启用少部分日期的情况下,有效日期的功能就非常适合了.
关键属性: opposite 默认为false, 为true时,无效日期变成有效日期,该属性对无效天,特殊天不起作用
示例6.1:只启用 每个月份的 5日 15日 25日

```<input id="d46" type="text" class="Wdate" onFocus="WdatePicker({opposite:true,disabledDates:['5$']})"/>

//注意 :'5$' 表示以 5 结尾 注意 $ 的用法

7)特殊天和特殊日期
特殊天和特殊日期的用法跟完全无效天和无效日期完全相同,但是opposite属性对其无效
关键属性:
specialDays (0至6 分别代表 周日至周六) 用法同无效天
specialDates 用法同无效日期,但是对时分秒无效
示例7.1:高亮每周 周一 周五

复制代码 代码如下:
```cb8dec745a0a2c6c9d278c375101d991

示例7.2:高亮每月 1号 15号

复制代码 代码如下:
```4c9f19be1427f026974ab5aec04ca534

以上就是本文的全部内容,希望对大家的学习有所帮助。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn