Manchmal müssen Sie einen Datumsbereich in ExtJs auswählen, was ein automatisches Urteil erfordert. Das ausgewählte Startdatum kann nicht größer sein als das Enddatum oder das Enddatum kann nicht geringer sein als das Startdatum. Der implementierte Code ist wie folgt
Reproduktionsbild:
Wie aus der obigen Abbildung ersichtlich ist, wird der Auswahlbereich der Endzeit automatisch begrenzt und die Verknüpfung zwischen den beiden Datumswählern realisiert.
Der Code ist wie folgt:
Definieren Sie zuerst die Funktionsverarbeitungsfunktion:
Ext.Apply (ext.form.field.vtypes, {PeriodeAnge: function (val, field) {var date = field.parseDate (val); if (! Date) {return false;} if (field.startDateField && (! Thaterangemax || field.Up ('grid'). field.up ('grid'). down ('#' + field.enddatefield); End.SetMinValue (Datum); End.Validate (); this.daterangemin = Datum; } Return true; }, PeriodangetExt: 'Das Startdatum muss geringer sein als das Enddatum'}); Ext.tip.quickTipManager.init ();Fügen Sie Elemente in TBAR, BBAR oder Form hinzu:
{ xtype: 'datefield', fieldLabel: 'time range start', name: 'startdt', id: 'startdt', vtype: 'daterange', endDateField: 'enddt', format: 'Ym-d', width: 220, labelWidth: 90, msgTarget: 'side', autoFitErrors: false }, { xtype: 'datefield', fieldLabel: 'end', name: 'enddt', id: 'enddt', vtype: 'daterange', startDateField: 'startdt', format: 'Ym-d', width: 170, labelWidth: 40, msgTarget: 'side', autoFitErrors: false }, { xtype: 'button', text: 'query', iconCls: 'fljs', Handler: function () {...Dieser Code kann in ExtJS4.1.1 kopiert werden, um auszuführen