human
Je dois désactiver les entrées d'abord, puis les réactiver lors du clic sur un lien.
Voici ce que j'ai essayé jusqu'à présent, mais ça ne fonctionne pas.
HTML :
```
```
jQuery :
```$("#edit").click(function(event){
   event.preventDefault();
   $('.inputDisabled').removeAttr("disabled")
});
```

Cela m'affiche ```true``` puis ```false```, mais rien ne change pour les entrées :
```$("#edit").click(function(event){
   alert('');
   event.preventDefault();
   alert($('.inputDisabled').attr('disabled'));
   $('.inputDisabled').removeAttr("disabled");
   alert($('.inputDisabled').attr('disabled'));
});
``
gpt
Utilisez toujours la méthode ```prop()``` pour activer ou désactiver les éléments lors de l'utilisation de jQuery (voir ci-dessous pourquoi).
Dans votre cas, cela serait :
```$(&quot;#edit&quot;).click(function(event){
   event.preventDefault();
   $('.inputDisabled').prop(&quot;disabled&quot;, false); // Les éléments sont maintenant activés.
});
```
Exemple jsFiddle ici.


Pourquoi utiliser ```prop()``` lorsque vous pouvez utiliser ```attr()```/```removeAttr()``` pour faire cela ?

Fondamentalement, ```prop()``` doit être utilisé lors de la récupération ou de la définition de propriétés (telles que ```autoplay```, ```checked```, ```disabled``` et ```required``` entre autres).
Bien que ce que vous voulez faire puisse techniquement être fait en utilisant ```attr()```/```removeAttr()```, cela ne signifie pas que cela devrait être fait - et cela peut causer un comportement étrange/problématique, comme dans ce cas.

"La différence entre les attributs et les propriétés peut être importante dans des situations spécifiques. Avant jQuery 1.6, la méthode ```.attr()``` prenait parfois en compte les valeurs des propriétés lors de la récupération de certains attributs, ce qui pouvait entraîner un comportement incohérent. À partir de jQuery 1.6, la méthode ```.prop()``` permet de récupérer explicitement les valeurs des propriétés, tandis que ```.attr()``` récupère les attributs."
"Les propriétés affectent généralement l'état dynamique d'un élément DOM sans modifier l'attribut HTML sérialisé. Les exemples incluent la propriété ```value``` des éléments d'entrée, la propriété ```disabled``` des entrées et des boutons, ou la propriété ```checked``` d'une case à cocher. La méthode ```.prop()``` doit être utilisée pour définir ```disabled``` et ```checked``` au lieu de la méthode ```.attr()```. La méthode ```.val()``` doit être utilisée pour obtenir et définir ```value```." - Documentation jQuery pour prop()

Avant jQuery 3.0 (avant 2016)
La raison pour laquelle vous devriez utiliser ```prop``` plutôt que ```removeAttr()``` est que ```removeAttr()``` supprime complètement l'attribut ```disabled``` lui-même - alors que cette méthode définirait simplement le nom de propriété correspondant sur ```false``` :

Avant jQuery 3.0, l'utilisation de .removeAttr() sur un attribut booléen tel que checked, selected ou readonly définissait également la propriété nommée correspondante sur false. Ce comportement était nécessaire pour les anciennes versions d'Internet Explorer, mais il n'est pas correct pour les navigateurs modernes car l'attribut représente la valeur initiale et la propriété représente la valeur actuelle (dynamique). - Modifications de jQuery 3.0

Alors que ```prop()``` définirait simplement la valeur booléenne sous-jacente de la propriété sur false.