valor tiene saber quitar obtener modificar elemento con atributo agregar jquery html custom-data-attribute jquery-data

tiene - quitar atributo readonly jquery



¿Cómo preservar el caso de un atributo de datos? (4)

El objeto html:

<div data-myAttribute="test"></div>

El código:

var $o = $("div"); $.each($o.data(),function(k,v){ console.log(k); //writes ''myattribute'' instead of ''myAttribute'' });

¿Cómo conservo el caso del atributo?


Como un addendum a @A. Wolff La respuesta de @A. Wolff es que puede aplicar un -- al nombre del atributo de datos si desea mayúsculas.

<div data--my-attribute="test"></div>

MyAttribute en una clave de datos de MyAttribute


Los atributos de datos HTML válidos no pueden contener caracteres en mayúsculas de todos modos:

Desde la W3 :

Un atributo de datos personalizado es un atributo en ningún espacio de nombres cuyo nombre comience con la cadena "datos-", tiene al menos un carácter después del guión, es compatible con XML y no contiene caracteres en el rango U + 0041 a U + 005A LETRA CAPITAL LATINA A A LETRA CAPITAL LATINA Z) .


Si su objetivo es apuntar a myAttribute como clave de la propiedad del dataset de dataset , debe usar data-my-attribute :

<div data-my-attribute="test"></div>

Vea el siguiente enlace con respecto a la regla camelCased: https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement.dataset

PD: como Izkata comentó Izkata :

Para referencia para otros, jquery también realiza una conversión tal que $ div.data (''my-attribute'') devuelve lo mismo que $ div.data (''myAttribute''). La propiedad del conjunto de datos javascript de vainilla no hace esto.


Usted no puede Los nombres de atributos siempre están en minúsculas en HTML5.