Parfois, vous devez sélectionner une plage de dates en extjs, ce qui nécessite un jugement automatique. 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. Le code implémenté est le suivant
Image de reproduction:
Comme le montre la figure 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 et la liaison entre les deux sélecteurs de date sera réalisée.
Le code est le suivant:
Définissez d'abord la fonction de traitement de la liaison:
Ext.Apply (ext.form.field.vtypes, {périodiange: function (val, fiel Field.Up (Grid '). Down (' # '+ field.startDateField); field.up ('grid'). Down ('#' + field.enddatefield); end.setMinValue (date); end.validate (); this.Daterangemin = date; } return true; }, parodorangeText: «La date de début doit être inférieure à la date de fin '}); Ext.tip.quicktipmanager.init ();Ajouter des éléments dans TBAR, BBAR ou FORME:
{xType: 'Datefield', FieldLabel: 'Time Range Start', Nom: 'Startdt', ID: 'StartDT', VTYPE: 'Daterange', EndDateField: 'Enddt', Format: 'YM-D', Width: 220, LabelWidth: 90, MSGTarget: 'Side', autofiterrors: false}, {xtype: 'Datefield, " FieldLabel: 'end', nom: 'enddt', id: 'enddt', vtype: 'daterange', startDateField: 'startdt', format: 'ym-d', width: 170, labelwidth: 40, msgtarget: 'ym-d', autofiterrors: "false}, {xtype: 'bouton' Handler: function () {...Ce code peut être copié sur extjs4.1.1 pour exécuter