javascript - ejemplo - jquery set attribute
jQuery data() devuelve undefined, attr() devuelve entero (1)
Tengo el siguiente código:
alert($embellishment.data("embellishmentId"));
alert($embellishment.attr("data-embellishmentId"));
La primera alerta devuelve undefined
, mientras que la segunda alerta devuelve un entero, 3
.
Estoy usando jQuery versión 1.7.2 (se agregaron data
con la versión 1.4, creo)
¿Por qué es esto? ¿Debo utilizar data()
si no devuelve los valores correctos?
DE ACUERDO. Encontré el problema al interpretar documentos de jQuery .
Cuando escribes:
$embellishment.data("embellishmentId");
es manejado por jQuery como atributo compuesto:
<div data-embellishment-id="3"></div>
Por lo tanto, para resolver el problema, puede utilizar minúsculas en la clave de datos; de lo contrario, solo aborda el atributo diferente.
<!-- HTML -->
<div data-embellishmentid="3"></div>
// JavaScript
$embellishment.data("embellishmentid");