Autor Zpráva
CarlosK
Profil *
Dobrý den, potřebuji přes jQuery zjistit, jestli tag neobsahuje text a pokud ho nebude obsahovat, zavolat funkci.

Například mám html stránku index.html, která obsahuje:
<span class='test'>Dva</span>

Přes jQuery chci zjistit, zda span.test neobsahuje text 'Dva'.

Našel jsem jen tuto funkci, ale nefunguje:
<script>
if($("span.test:not(:contains('Dva'))"))
{ 
  funkce();
}
</script>

Všem děkuji předem za pomoc.
Str4wberry
Profil
Uvedený kód zřejmě nefunguje z toho důvodu, že $("span.test:not(:contains('Dva'))") bude v každém případě objekt a ne třeba false, jak očekáváš.

V jQuery by to mohlo být asi takto:
if($("span.test").text() != "Dva")
{ 
  funkce();
}
CarlosK
Profil *
Děkuji, javascript jsem se začal učit teprve včera, takže se omlouvám za hloupý dotaz. Ještě mě zajímalo, jestli lze zobrazit v javascriptu chybové hlášky, protože prohlížeč mi při chybě nic neohlásí.
Marek88
Profil
CarlosK:
Ještě mě zajímalo, jestli lze zobrazit v javascriptu chybové hlášky...
Třeba ve Firefoxu ctrl+shift+k (je tam toho víc, než jen JS). V jiných prohlížečích bude taky něco podobného. Hledej třeba "vývoj webu", "konzole" apod...
candiess
Profil
CarlosK:
Ještě mě zajímalo, jestli lze zobrazit v javascriptu chybové hlášky
Máš na mysli funkci Alert?
Marek88
Profil
candiess:
Máš na mysli funkci Alert?
Ne, nemá! Tvoje odpověď je uplně mimo. Přečti si tu jeho otázku až do konce: „...protože prohlížeč mi při chybě nic neohlásí.
Copak se alert vypisuje při chybě?
CarlosK
Profil *
candiess:
Alert nemám na mysli, koukám, že jsem to špatně popsal

Marek88
Děkuji, přesně toto jsem měl na mysli

Str4wberry
Těd jsem se dostal k počítači, ale Vaše řešení mi nefunguje
Str4wberry
Profil
Potom bude chyba někde jinde. Viz ukázka, kde se při přepsání obsahu <span>u zobrazí upozornění.
pcmanik
Profil
CarlosK:
Javascript si sa zacal ucit vcera? Mam taky pocit ze si sa zacal ucit jQuery. Je to sice JavaScript, ale dokial nepochopis JavaScript ako taky nechod do frameworku.
CarlosK
Profil *
pcmanik:
Omlouvám se, myslel jsem samozdřejmě jQuery.
Nox
Profil
Jinak bych upozornil, že u :contains to není přesná shoda, stačí aby argument :contains byl v elementu jako podřetězec (takže by vzalo i "Dvacet")

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: