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.
$("#edit").click(function(event){ event.preventDefault(); $('.inputDisabled').removeAttr("disabled") });
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“.
$("#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.
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!