Autor Zpráva
Adela
Profil
Víte prosím někdo jestli se dá pomocí jQuery změnit aby tohle:

<select disabled=""></select>


vypadalo pro prohlížeč jako tohle:

<select style="display: none;"></select>


Děkuji za radu.
panther
Profil
Adela:
víš, že veškeré JS nahrazování nebude fungovat s vypnutým JS? Disabled a skrytý element je poměrně rozdíl. Máš pro takové nahrazování nějaký důvod?

Pro odebrání by mělo fungovat removeAttr(). Skrývat prvek můžeš buď přidáním atributu nebo přidáním třídy a tu ostylovat, což bude asi lepší.
Adela
Profil
jj To je jasné, pokud bude vypnutý JS tak tam bude prostě <select disabled=""></select>, s tím se počítá, je to tak už naprogramované.

No a ještě jinak -- jak tedy přidám třídu k selektoru pokud je disabled="" ale pokud není tak tam ta třída nebude:

<select disabled="" class="trida"></select>

rovná se
<select disabled="" class="trida nodisplay"></select>


<select class="trida"></select>

rovná se
<select class="trida"></select>
fajzen
Profil
Adela:
malo by fungovať toto:
$('.trida[disabled]').addClass('nodisplay');

EDIT: dokonca existuje aj
$('.trida:disabled').addClass('nodisplay');
ale to by muselo byť disabled="disabled", nie disabled="", ak sa nemýlim
Chamurappi
Profil
Reaguji na fajzena:
Jak si myslíš, že prohlížeč pozná rozdíl mezi disabled="" a disabled="disabled"? Obojí značí zakázaný element (přestože by to první nemělo fungovat), obojí se ukazuje v HTML DOMu stejně (objekt.disabled vrací true/false).
Adela
Profil
Jedo oboje... díky!!!

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:

0