Diskuze: jQuery selektory na zanořený prvek

JavaScript JavaScript jQuery selektory na zanořený prvek

Aktivity (1)
Avatar
Ondřej Pech
Člen
Avatar
Ondřej Pech:14. června 11:09

Ahoj, řeším teď problém že mám tabulku dejme tomu s produkty, v tabulce je název produktu, cena, ...

<table>
        <thead>
        ...
        </thead>
        <tbody>
                <tr id="product1">
                        <td id="name">Název</td>
                        <td id="price">1650,50</td>
                </tr>
                ...
        </tbody>
</table>

Zkusil jsem: Tak různě ale prostě nevím :D

Chci docílit: a hodnoty těch buněk potřebuju číst. Podle mě to jde jednoznačně určitě že chci tr product1 a v něm chci např. price. Ale nevím jak napsat selector.
Díky za rady ;)

 
Odpovědět 14. června 11:09
Avatar
Jindřich Máca
Tým ITnetwork
Avatar
Odpovídá na Ondřej Pech
Jindřich Máca:14. června 11:31

Ahoj, tak v první řadě vidím problém s použitím id jako name nebo price. Totiž id by mělo být jedno unikátní v rámci celého HTML dokumentu, takže pokud je takto aplikuješ v každém tr, tak je to špatně. Místo toho by jsi měl použít class. Když tedy Tvůj příklad opravíme:

<table>
        <thead>
        ...
        </thead>
        <tbody>
                <tr id="product1">
                        <td class="name">Název</td>
                        <td class="price">1650,50</td>
                </tr>
                <tr id="product2">
                        <td class="name">XYZ</td>
                        <td class="price">999,99</td>
                </tr>
                ...
        </tbody>
</table>

jQuery kód vybírající price u product1 bude vypadat takto:

$('#product1 .price').text();

Je to velice jasné a přímočaré pokud znáš CSS. ;)

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 14. června 11:31
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.