Heim  >  Artikel  >  Web-Frontend  >  Wie emuliere ich das schreibgeschützte SELECT-Tag in HTML für POST-Daten?

Wie emuliere ich das schreibgeschützte SELECT-Tag in HTML für POST-Daten?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-16 10:22:02334Durchsuche

How to Emulate Readonly SELECT Tag in HTML for POST Data?

Emulieren des schreibgeschützten SELECT-Tags in HTML für POST-Daten

Während die HTML-Spezifikation das Deaktivieren des SELECT-Elements mit dem Attribut „disabled“ zulässt, verhindert dies dies verhindert, dass der Wert in die POST- oder GET-Anfragen aufgenommen wird. Dies stellt eine Herausforderung dar, wenn das gewünschte Verhalten darin besteht, Benutzer davon abzuhalten, die Auswahl zu ändern, aber dennoch ihren Wert für die Übermittlung beizubehalten.

Um dieses Problem zu lösen und eine schreibgeschützte Funktionalität zu erreichen und gleichzeitig die POST-Daten beizubehalten, wird ein zweistufiger Ansatz empfohlen :

  1. SELECT deaktiviert lassen: Behalten Sie das deaktivierte Attribut für das SELECT-Element bei, um Benutzerinteraktion zu verhindern.
  2. Versteckte Eingabe hinzufügen: Erstellen Sie ein verstecktes Eingabeelement mit demselben Namensattribut wie das SELECT-Attribut und setzen Sie seinen Wert auf den aktuellen Wert des SELECT-Elements.

Wenn Sie das SELECT-Element später aktivieren möchten, führen Sie die folgenden Schritte aus:

  1. SELECT erneut aktivieren: Entfernen Sie das deaktivierte Attribut aus SELECT und setzen Sie sein Namensattribut auf seinen ursprünglichen Wert zurück.
  2. Mit versteckter Eingabe synchronisieren: Kopieren Sie im onchange-Ereignis von SELECT seinen Wert in die versteckte Eingabe, um Konsistenz sicherzustellen.

Hier ist ein Codebeispiel, um diesen Ansatz zu veranschaulichen:

<form>
$('#animal-select').change(function() {
  $('#animal').val($(this).val());
});

Das obige ist der detaillierte Inhalt vonWie emuliere ich das schreibgeschützte SELECT-Tag in HTML für POST-Daten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn