TimePicker im Element deaktiviert einen Teil der Zeit (deaktiviert auf Minuten)

TimePicker im Element deaktiviert einen Teil der Zeit (deaktiviert auf Minuten)

Die Projektanforderungen lauten: Datum und Uhrzeit auswählen, nur Zeiten nach der aktuellen Uhrzeit auswählen und die Mindeststufe auf Minuten deaktivieren.

Es gibt zwei Möglichkeiten
1. Verwenden Sie den Datums- und Uhrzeitwähler DateTimePicker.
2. DatePicker und TimePicker kombiniert verwenden Hier verwende ich die zweite Methode, das wichtigste Attribut sind Picker-Optionen

<el-Datumsauswahl
          v-Modell = "formInline.inventoryDate"
          Typ="Datum"
          ausrichten="rechts"
          Platzhalter="Bitte wählen Sie ein Datum aus"
          :picker-options="Picker-Optionen"
          Werteformat="jjjj-MM-tt"
          format="jjjj-MM-tt"
          @change="Änderungsdatum"
         ></el-Datumsauswahl>
         <el-Zeit-Picker
          v-Modell = "formInline.inventoryDateTime"
          Typ="Datum"
          ausrichten="rechts"
          Platzhalter="Bitte wählen Sie eine Uhrzeit aus"
          :picker-options="{
           wählbarer Bereich: this.startTimeRange
          }"
          @change="Änderungszeit"
          Werteformat="HH:mm:ss"
          Format = "HH:mm:ss"
         ></el-Zeitpicker>
Daten(){
	zurückkehren {
		pickerOptions: {
    disabledDate: Zeit => {
     Rückgabewert: Zeit.getTime() < Date.now() - 3600 * 1000 * 24
    },
   },
	}
},
betrachten:
  'formInline.inventoryDate':{
   tief:wahr,
   handler(neuerWert, alterWert) {
    wenn(neuerWert){
     let nowDate = this.$options.filters['sendTimeDate'](new Date().getTime()+60*1000);// Die Zeit nach einer Minute (ich bin hier aufgrund geschäftlicher Anforderungen hier, Sie können die Zeit hier nach Belieben anpassen)
     let dt = nowDate.split(" ");
     sei st = '';
     wenn(neuerWert.split(" ")[0] == dt[0]){
      // Heute beginnt die ausgewählte Zeit mit der aktuellen Stunde, Minute und Sekunde st = dt[1];
     }anders{
      // Morgen und danach beginnen um 0:00 Uhr st = '00:00:00';
     }
     this.startTimeRange = st + '- 23:59:59';
     //Konsole.log(dieser.startTimeRange)
     //Beispiel: Wenn es heute 10:41:40 Uhr ist, dann wählen Sie den Zeitbereich: 11:41:40 - 23:59:59
       //Ansonsten: 00:00:00 - 23:59:59
    }
   },
  }
 },

Idee: Verwenden Sie das Konfigurationselement disabledDate im Attribut picker-options von el-date-picker, um zuerst den Datumswähler zu deaktivieren, sodass nur Daten nach dem aktuellen Datum ausgewählt werden können. Verwenden Sie dann watch, um das vom Datumswähler ausgewählte Datum zu überwachen. Wenn es heute ist, verwenden Sie das Konfigurationselement selectableRange im Attribut picker-options von el-time-picker, um die auswählbare Zeit zu steuern.

Hinweis: Obwohl diese Logik die Auswahl von Sekunden deaktivieren kann, wird die Auswahl von Sekunden auf der Front-End-Seite nicht deaktiviert. Wenn Sie die vorherigen Sekunden auswählen, werden standardmäßig die Sekunden nach einer Minute angezeigt (ich habe dies aus geschäftlichen Gründen getan. Sie können den deaktivierten Zeitraum nach Belieben über den obigen Code anpassen).

Rendereffekt:

Bildbeschreibung hier einfügen

Lassen Sie mich die erste Methode zusammenfassen. Das Datum, das ich deaktiviert habe, liegt vor heute und der Zeitraum reicht von 22:00 bis 02:00 Uhr. Ich werde den Code direkt posten.

<el-Datumsauswahl
         Klasse="Datumsklasse"
         v-Modell="aa"
         Typ="Datum/Uhrzeit"
         :picker-options="Picker-Optionen"
         Platzhalter="Nach 22:00"
         Stil="Breite:100%">
        </el-Datumsauswahl>


 Daten() {
   zurückkehren {
     aa: '',
     pickerOptions: {
      // Zeit begrenzen selectableRange: ['22:00:00 - 23:59:59','00:00:00 - 02:00:00'], // Hier kann auch eine Variable angebunden werden um die Zeit dynamisch zu begrenzen // Datum begrenzen disabledDate: this.disabledDate
    },
   }
 } ,
 Methoden: {
  deaktiviertesDatum(Uhrzeit) {
    Rückgabewert: Zeit.getTime() < Date.now() - 3600 * 1000 * 24
  }
}

Dies ist das Ende dieses Artikels zum Deaktivieren eines Teils der Zeit im TimePicker-Zeitwähler im Element (Deaktivierung auf Minuten). Weitere Informationen zum Deaktivieren eines Teils der Zeit im Element TimePicker finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die folgenden verwandten Artikel weiter. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Lösen Sie das Problem, dass das Element DateTimePicker+vue Popup-Box nur Stunden anzeigt
  • Anwendungsbeispiel für das Datums-/Uhrzeit-Selektorelement DateTimePicker

<<:  So sortieren Sie eine Zeile oder Spalte in MySQL

>>:  So konfigurieren Sie Nginx zur Unterstützung von IPv6 unter Linux

Artikel empfehlen

Beispiel für die Konfiguration der Timeout-Einstellung für MySQL-Datenbanken

Inhaltsverzeichnis Vorwort 1. JDBC-Timeout-Einste...

Bringen Sie Ihnen bei, ein einfaches Versprechen Schritt für Schritt umzusetzen

Inhaltsverzeichnis Schritt 1: Erstellen Sie das F...

Unterschiede zwischen MySQL MyISAM und InnoDB

Der Unterschied: 1. InnoDB unterstützt Transaktio...

Einführung in den vollständigen Namen und die Funktion von HTML-Tags

Alphabetisch DTD: Gibt an, in welcher XHTML 1.0 D...

MySQL: MySQL-Funktionen

1. Integrierte Funktionen 1. Mathematische Funkti...

Detaillierte Erklärung zum MySQL-Dateispeicher

Was ist ein Dateisystem Wir wissen, dass Speicher...

So fügen Sie in MySQL 8.0 schnell Spalten hinzu

Vorwort: Ich habe vor langer Zeit gehört, dass My...

Kopieren Sie den Inhalt einer Datei an das Ende einer anderen Datei in Linux

Problembeschreibung: Der Inhalt der Datei 11 laut...

Methoden zum Defragmentieren und Freigeben von Speicherplatz in MySQL-Tabellen

Inhaltsverzeichnis Ursachen der MySQL-Tabellenfra...

Verwendung des Linux-Stat-Befehls

1. Befehlseinführung Der Befehl stat wird verwend...

Natives JS zum Erzielen von Verzeichnis-Scrolleffekten

Hier ist ein Text-Scrolling-Effekt, der mit nativ...