Autor Zpráva
Sylar
Profil
Zdravím,
mám element s několika třídami a potřeboval bych v jquery vytáhnout třídu tu "edit_NĚCO"
<div id="menu" class="menu navigace edit_m-s_855">Menu</div>
Lze z elementu nějak vytáhnout třídu, u které neznám jméno (může být jakékoliv), ale vždy začíná "edit_" ?

Zkoušel jsem něco jako
var id_class = $(this).find('[class^=edit]');
nebo
var id_class = $(this).attr('[class^=edit]');
Ale ani jedno nefunguje.
_es
Profil
Sylar:
V this.className máš celý obsah atribútu class, z toho si to nejako vytiahni.
joe
Profil
Proč dáváš nějaké číslo do třídy? Přesně k tomu slouží datové atributy, ke kterým pak můžeš díky jQuery přistupovat $(...).data("id"); pro element s atributem data-id.

Pokud chceš používat to, co jsi uvedl jako příklad, pak element má vlastnost classList (není však crossBrowser), kde najdeš všechny jeho třídy, ty iterovat a porovnávat s regulárním výrazem.

Pole tříd si taky můžeš získat přímo z atributu class (pro jQuery $(...).attr("class")).
Sylar
Profil
joe:
máš pravdu, využil jsem atribut data a funguje to, díky za tip

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: