Maison > interface Web > js tutoriel > le corps du texte

Code d'implémentation pour le jugement automatique de la plage de temps extjs selection_extjs

WBOY
Libérer: 2016-05-16 16:43:23
original
1256 Les gens l'ont consulté

Dans extjs, vous devez parfois sélectionner une plage de dates, qui doit être automatiquement jugée. La date de début sélectionnée ne peut pas être supérieure à la date de fin, ou la date de fin ne peut pas être inférieure à la date de début. comme suit

Rendu :

Comme vous pouvez le voir sur l'image ci-dessus, lorsqu'une heure de début est sélectionnée, la plage de sélection de l'heure de fin sera automatiquement limitée pour réaliser la liaison des deux sélecteurs de date

.

Le code est le suivant :

Définissez d'abord la fonction de traitement des liens :

Ext.apply(Ext.form.field.VTypes, { 
daterange: function (val, field) { 
var date = field.parseDate(val); 

if (!date) { 
return false; 
} 
if (field.startDateField && (!this.dateRangeMax || (date.getTime() != this.dateRangeMax.getTime()))) { 
var start = field.up('grid').down('#' + field.startDateField); 
start.setMaxValue(date); 
start.validate(); 
this.dateRangeMax = date; 
} 
else if (field.endDateField && (!this.dateRangeMin || (date.getTime() != this.dateRangeMin.getTime()))) { 
var end = field.up('grid').down('#' + field.endDateField); 
end.setMinValue(date); 
end.validate(); 
this.dateRangeMin = date; 
} 
return true; 
}, 
daterangeText: '开始日期必须小于结束日期' 
}); 
Ext.tip.QuickTipManager.init();
Copier après la connexion

Ajouter aux éléments sous tbar, bbar ou form :

{ 
xtype: 'datefield', 
fieldLabel: '时间范围 开始', 
name: 'startdt', 
id: 'startdt', 
vtype: 'daterange', 
endDateField: 'enddt', 
format: 'Y-m-d', 
width: 220, 
labelWidth: 90, 
msgTarget: 'side', 
autoFitErrors: false 
}, { 
xtype: 'datefield', 
fieldLabel: '结束', 
name: 'enddt', 
id: 'enddt', 
vtype: 'daterange', 
startDateField: 'startdt', 
format: 'Y-m-d', 
width: 170, 
labelWidth: 40, 
msgTarget: 'side', 
autoFitErrors: false 
}, { xtype: 'button', 
text: '查询', 
iconCls: 'fljs', 
handler: function () { ...
Copier après la connexion

L'effet ci-dessus peut être obtenu. Ce code est copié et exécuté dans extjs4.1.1

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal