Adicionando atributo no jQuery


Respostas:


520

Você pode adicionar atributos usando attro seguinte:

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

No entanto, para propriedades DOM como checked, disablede readonly, a maneira correta de fazer isso (a partir do JQuery 1.6) é usar prop.

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

28
Para mim $('#someid').prop('disabled', true);não funciona, mas $('#someid').attr('disabled', true);funciona bem.
Vukašin Manojlović

4
Concordo com @ VukašinManojlović .. para mim o mesmo.
Sstauross

3
Antes de decidir se você vai usar attrou prop, é importante entender a diferença entre propriedades e atributos. Sem entender a diferença, é provável que você tenha um comportamento inesperado. Veja stackoverflow.com/a/6004028/3367343
Travis Hohl

prop pode ser usado como um substituto para attr agora? ou é usado apenas em alguns casos especiais?
Chaudhry Waqas

41

melhor solução: do jQuery v1.6, você pode usar prop () para adicionar uma propriedade

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

para removê-lo, use removeProp()

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

Reference

Observe também que o método .removeProp () não deve ser usado para definir essas propriedades como false. Depois que uma propriedade nativa é removida, ela não pode ser adicionada novamente. Veja .removeProp () para mais informações.


29

Você pode fazer isso com a .attrfunção do jQuery , que definirá atributos. A remoção deles é feita através da .removeAttrfunção

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

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

1
Bônus por incluir a função remover!
BoatCode 6/11




2

Adicionar atributo como:

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

0

Isso poderia ser mais útil ....

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

Atributos e propriedades não são exatamente os mesmos. Por exemplo, "id" é um atributo, não uma propriedade. Você usa .attr()para definir ou ler. Veja o parágrafo "Atributos vs. Propriedades" em .prop () e .attr () nos documentos do jQuery. Veja também a resposta de Paul Rosania acima.
Jkdev 14/05


0

use este código <script> $('#someid').attr('disabled,'true'); </script>


seria melhor se você pudesse ter alguma explicação
Mooga

Basta incluir ligação jQuery após o código de escrita <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> de texto dentro de $ símbolo selecionar todo elemento com id = someid, atributo disabled desta mudança id a verdade
Vildan Bina
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.