Ajout d'attribut dans jQuery


Réponses:


520

Vous pouvez ajouter des attributs en utilisant attrcomme ceci:

$('#someid').attr('name', 'value');

Cependant, pour les propriétés DOM comme checked, disabledet readonly, la bonne façon de le faire (à partir de JQuery 1.6) est d'utiliser prop.

$('#someid').prop('disabled', true);

28
Pour moi, $('#someid').prop('disabled', true);ça ne marche pas, mais ça $('#someid').attr('disabled', true);marche bien.
Vukašin Manojlović

4
D'accord avec @ VukašinManojlović .. pour moi la même chose.
sstauross

3
Avant de décider si vous allez utiliser attrou prop, il est important de comprendre la différence entre les propriétés et les attributs. Sans comprendre la différence, vous risquez de rencontrer un comportement inattendu. Voir stackoverflow.com/a/6004028/3367343
Travis Hohl

l'hélice peut-elle être utilisée pour remplacer attr maintenant? ou est-il utilisé uniquement dans certains cas particuliers?
Chaudhry Waqas

41

meilleure solution: à partir de jQuery v1.6, vous pouvez utiliser prop () pour ajouter une propriété

$('#someid').prop('disabled', true);

pour le retirer, utilisez removeProp()

$('#someid').removeProp('disabled');

Reference

Notez également que la méthode .removeProp () ne doit pas être utilisée pour définir ces propriétés sur false. Une fois qu'une propriété native est supprimée, elle ne peut plus être ajoutée. Voir .removeProp () pour plus d'informations.


29

Vous pouvez le faire avec la .attrfonction de jQuery , qui définira les attributs. Leur suppression se fait via la .removeAttrfonction.

//.attr()
$("element").attr("id", "newId");
$("element").attr("disabled", true);

//.removeAttr()
$("element").removeAttr("id");
$("element").removeAttr("disabled");

1
Bonus pour inclure la fonction de suppression!
BoatCode




2

Ajouter un attribut en tant que:

$('#Selector_id').attr('disabled',true);

0

Cela pourrait être plus utile ...

$("element").prop("id", "modifiedId");
//for boolean
$("element").prop("disabled", true);
//also you can remove attribute
$('#someid').removeProp('disabled');

Les attributs et les propriétés ne sont pas exactement les mêmes. Par exemple, "id" est un attribut, pas une propriété. Vous utilisez .attr()pour le définir ou le lire. Voir le paragraphe "Attributs vs Propriétés" sous .prop () et .attr () dans les documents jQuery. Voir également la réponse de Paul Rosania ci-dessus.
jkdev


0

utilisez ce code <script> $('#someid').attr('disabled,'true'); </script>


ce serait mieux si vous pouviez avoir une explication
mooga

Il suffit d'inclure le lien jQuery après avoir écrit le code <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> Texte à l'intérieur de $ symbol sélectionnez tous les éléments avec id = someid, l'attribut désactivé de cet id passe à true
Vildan Bina
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.