Agregar atributo en jQuery


Respuestas:


520

Puede agregar atributos usando attrasí:

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

Sin embargo, para propiedades DOM como checked, disabledy readonly, la forma correcta de hacer esto (a partir de JQuery 1.6) es usar prop.

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

28
Para mí $('#someid').prop('disabled', true);no funciona, pero $('#someid').attr('disabled', true);funciona bien.
Vukašin Manojlović

44
De acuerdo con @ VukašinManojlović .. para mí lo mismo.
sstauross

3
Antes de decidir si va a utilizar attro prop, es importante comprender la diferencia entre propiedades y atributos. Sin entender la diferencia, es probable que te encuentres con un comportamiento inesperado. Ver stackoverflow.com/a/6004028/3367343
Travis Hohl el

¿Se puede usar prop como reemplazo de attr ahora? o se usa solo en algunos casos especiales?
Chaudhry Waqas

41

La mejor solución: desde jQuery v1.6 puede usar prop () para agregar una propiedad

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

para eliminarlo, use removeProp()

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

Reference

También tenga en cuenta que el método .removeProp () no debe usarse para establecer estas propiedades en falso. Una vez que se elimina una propiedad nativa, no se puede volver a agregar. Ver .removeProp () para más información.


29

Puede hacer esto con la .attrfunción de jQuery , que establecerá atributos. Eliminarlos se realiza a través de la .removeAttrfunción.

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

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

1
¡Bonificación por incluir la función eliminar!
BoatCode





0

Esto podría ser más útil ...

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

Los atributos y las propiedades no son exactamente iguales. Por ejemplo, "id" es un atributo, no una propiedad. Lo usas .attr()para configurarlo o leerlo. Consulte el párrafo "Atributos vs. Propiedades" en .prop () y .attr () en los documentos de jQuery. También vea la respuesta de Paul Rosania arriba.
jkdev


0

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


que sería mejor si pudiera tener alguna explicación
Mooga

Solo incluya el enlace jQuery después de escribir el código <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> Texto dentro del símbolo $ seleccione todos los elementos con id = someid, el atributo deshabilitado de este cambio de id a verdadero
Vildan Bina
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.