Heim >Web-Frontend >js-Tutorial >Wie simuliere ich ein schreibgeschütztes Attribut für HTML-Select-Tags und pflege gleichzeitig POST-Daten?

Wie simuliere ich ein schreibgeschütztes Attribut für HTML-Select-Tags und pflege gleichzeitig POST-Daten?

Barbara Streisand
Barbara StreisandOriginal
2024-11-10 16:44:02799Durchsuche

How to Simulate a Readonly Attribute for HTML Select Tags While Maintaining POST Data?

Emulieren von Readonly-Attributen für HTML-Select-Tags unter Beibehaltung von POST-Daten

In HTML fehlt dem Select-Tag ein dediziertes Readonly-Attribut, mit nur einem deaktiviertes Attribut verfügbar. Das Deaktivieren von Formulareingaben verhindert jedoch deren Aufnahme in POST- oder GET-Anfragen.

Um dieses Problem zu beheben, besteht eine Problemumgehung darin, das Auswahlelement zu deaktivieren und eine versteckte Eingabe mit demselben Namen und Wert hinzuzufügen. Wenn das Auswahlelement aktiviert ist, wird sein Wert in die versteckte Eingabe kopiert, wodurch effektiv ein schreibgeschütztes Attribut nachgeahmt wird.

Hier ist eine Beispielimplementierung:

$('#mainform').submit(function() {
    $('#formdata_container').show();
    $('#formdata').html($(this).serialize());
    return false;
});

$('#enableselect').click(function() {
    $('#mainform input[name=animal]')
        .attr("disabled", true);
    
    $('#animal-select')
        .attr('disabled', false)
        .attr('name', 'animal');
    
    $('#enableselect').hide();
    return false;
});

Durch Bearbeiten des deaktivierten Attributs und Kopieren von Werten Zwischen der Auswahl- und der versteckten Eingabe emuliert dieser Ansatz die Funktionalität eines schreibgeschützten Attributs und ermöglicht gleichzeitig die Veröffentlichung von Daten.

Das obige ist der detaillierte Inhalt vonWie simuliere ich ein schreibgeschütztes Attribut für HTML-Select-Tags und pflege gleichzeitig 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