Heim >Web-Frontend >js-Tutorial >Wie aktiviere ich deaktivierte Eingabefelder in jQuery mit der richtigen Methode?

Wie aktiviere ich deaktivierte Eingabefelder in jQuery mit der richtigen Methode?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-19 19:08:30678Durchsuche

How to Enable Disabled Input Fields in jQuery Using the Correct Method?

So manipulieren Sie das Attribut „Deaktiviert“ mit jQuery

Problemstellung

Ich habe Eingabefelder auf meiner Webseite deaktiviert und möchte sie aktivieren wenn auf einen Link geklickt wird. Ich habe versucht, mit jQuery das Attribut „deaktiviert“ zu entfernen, aber es war nicht erfolgreich.

jQuery-Code:

$("#edit").click(function(event){
   event.preventDefault();
   $('.inputDisabled').removeAttr("disabled")
});

Problemanalyse

Das Problem Hier gilt, dass jQuery die Methode prop() verwenden sollte, um Elementeigenschaften festzulegen oder abzurufen, anstatt attr() oder removeAttr() zu verwenden, insbesondere für boolesche Werte Attribute wie „disabled“.

Lösung

$("#edit").click(function(event){
   event.preventDefault();
   $('.inputDisabled').prop("disabled", false);
});

Durch die Verwendung von prop() setzen wir die Eigenschaft „disabled“ explizit auf false und aktivieren so die Eingabefelder und Benutzern ermöglichen, mit ihnen zu interagieren.

Warum prop() verwenden?

Während attr() zum Abrufen oder Ändern von HTML-Attributen verwendet werden kann, ist prop( ) wurde speziell für die Verwaltung von Elementeigenschaften entwickelt. Bei booleschen Attributen wie „disabled“, „checked“ und „readonly“ wirkt prop() direkt auf die zugrunde liegende Eigenschaft und stellt das korrekte Verhalten in modernen Browsern sicher.

Vor jQuery 3.0 , removeAttr() würde auch die entsprechende Eigenschaft auf false setzen, was nun als falsches Verhalten bei der Verarbeitung boolescher Attribute gilt. Verwenden Sie daher immer prop() zum Aktivieren oder Deaktivieren von Elementen mit jQuery, um potenzielle Probleme zu vermeiden.

Das obige ist der detaillierte Inhalt vonWie aktiviere ich deaktivierte Eingabefelder in jQuery mit der richtigen Methode?. 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