.data()

Metoda .data() umožňuje načíst data dříve přiřazená k prvkům DOM. Můžeme načíst několik různých hodnot pro jeden prvek po jedné nebo jako sadu:

1
2
3
4
5
6
7

Volání .data() bez parametrů vrací JavaScriptový objekt obsahující každou uloženou hodnotu jako vlastnost. Tento objekt lze použít přímo k získání hodnot dat (ale uvědomte si, že názvy vlastností původně obsahující pomlčky budou upraveny, jak je popsáno níže).

Od jQuery 3 je každá dvouznaková sekvence „-“ (U+002D) následovaná malým písmenem ASCII v klíči nahrazena velkou verzí písmene, což je v souladu s API datové sady HTML. Příkaz jako $( "body" ).data( { "my-name": "aValue" } ).data(); vrátí { myName: "aValue" }.

HTML5 data-* Atributy

Od verze jQuery 1.4.3 se atributy data-* používají k inicializaci dat jQuery. Atributy data-* prvku jsou načteny při prvním vyvolání metody data() nad ním a poté již nejsou zpřístupněny ani mutovány (všechny hodnoty jsou uloženy interně v jQuery).

Každý pokus o převod řetězcové hodnoty atributu na hodnotu JavaScriptu je proveden (to zahrnuje booleany, čísla, objekty, pole a null). Řetězec je převeden na číslo pouze tehdy, pokud se tím nezmění jeho reprezentace (například řetězec „100“ je převeden na číslo 100, ale „1E02“ a „100.000“ jsou ponechány jako řetězce, protože jejich číselná hodnota 100 se serializuje na „100“). Pokud řetězec začíná znakem „{“ nebo „[„, použije se k jeho analýze znak jQuery.parseJSON; musí dodržovat platnou syntaxi JSON včetně názvů vlastností v uvozovkách. Řetězec, který nelze analyzovat jako hodnotu v jazyce JavaScript, se nepřevádí.

Chcete-li získat hodnotu atributu data-* jako nekonvertovaný řetězec, použijte metodu attr().

Od verze jQuery 1.6 jsou pomlčky v názvech atributů data-* zpracovávány v souladu s rozhraním API datové sady HTML.

Příklad při následujícím HTML:

1

Všechna následující porovnání jsou pravdivá:

1
2
3
4

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.