Autor Zpráva
kubatt
Profil
Čaute :-D potřebuji skrýt řádek tabulky javascriptem když kliknu na text tak se prostě skryje ten řádek na který sem klikl ale externě a to myslím tak že vyvolám script a v tom se to udělá aby ten řádek zmizel díky
sysel
Profil
Někde to vyhrabu, ale dělal jsem na to tlačítko. V případku, že by to mělo fungovat na kliknutí kdekloiv uvnitř řádku, zbaví to možnosti pracovat se samotným textem (kopírovat ...). Tak to nedoporučuji. Nežto najdu pokusím se naznačit.
Ale o obnovení řádku nemůže být řeč!

<tr onclick="umaz(this)"> ... </tr>

ale radši
<tr> ... <td onclick="umaz(this.parentNode)"></td></tr>


<script>
function umaz(oRow)
{ oTab = oRow.parentNode.parentNode;
  oTab.deleteRow(oRow.rowIndex)
}
</script>


Samozřejmě to lze napsat i:
<tr onclick="this.parentNode.parentNode.deleteRow(this.rowIndex)"> ... </tr>


Snad jsem tam nefláknul nějakou chybu, píšu to zpatra.
kubatt
Profil
jj díky funguje to ;)
Šroubek
Profil
Já to radši řeším pouze skrytím daného prvku (v tomto případě řádku) pomocí stylů - vlastnost display:
<table>
 <tr id="id-1" onclick="skryt(this)"><td> Jedna </td></tr>
 <tr id="id-2" onclick="skryt(this)"><td> Dva </td></tr>
 <tr id="id-3" onclick="skryt(this)"><td> Tri </td></tr>
</table>
<script>
function skryt(row) {
  row.style.display='none';
}
</script>

Skrytý řádek pak mohu zase dle potřeby zobrazit:
Zobrazit radky 
 <a href="#" onclick="zobrazit(1); return false;"> 1 </a> 
 <a href="#" onclick="zobrazit(2); return false;"> 2 </a> 
 <a href="#" onclick="zobrazit(3); return false;"> 3 </a>
<script>
function zobrazit(id) {
  document.getElementById('id-' + id).style.display='';
}
</script>
sysel
Profil
Reaguji na
Šroubek:

To je, o čem jsem uvažoval. Když něco skryju, není pak na co kliknout, aby se to vrátilo. A pak je tu ještě jeden zádrhel, ubírání (a přidávání) řádků jsem dělal pro formulář a tam šlo skutečně o to, aby všechny aktivní a odesílané řádky byly vidět. Pro pouze zobrazovaná data je pak skrývání akceptovatelné, ale za cenu vytvoření struktury "vracecích" prvků, na které po zmizení řádku je možné klikat.

BTW, mnohem hnusnější je skrývat/mazat sloupečky, fuj. ;-)
Šroubek
Profil
JJ - je to individuální - případ od případu - co je kde zrovna potřeba :-)
Zobrazování či skrývání různých prvků nemusí byýt vyvoláno zrovna kliknutím na nějaký prvek pomocí udaálosti onclick. Velice často využívám právě ve formulářích zobrazování či skrývání formulářových prvků pomocí událostí onKeyUp, onChange,...
Toho můžeme využít při různém kombinování polí formuláře - např. při zaškrtnutí checkboxu "chci dostat odpověď na mail" zobrazíme uživateli imputbox "zadejte email". Záleží už jen na potřebách a kreativitě programátora.
A co se týče odesílané prvky pormuláře, tak se věšinou nic nestane, když se odešle nějaké to kryté pole navíc - při skrývání pole lze snadno tomuto poli nastavi nulouvou nebo nějakou defaultní hodnotu, kterou pak můžeme ošetřit na straně aplikace po odeslání formluáře.
Nelze říct co je lepší - vře je potřeba něco jiného a každému něco jiného vyhovuje :-) Někdy je výhodnější úplné odstranění elementu, nebo vytvoření nového, jindy postačí pouze skrytí či zobrazení ;-)
kubatt
Profil
jo a prosímvás nevíte jak to udělat jakoby nadálku že místo toho this zadám něco jiného ? protože to potřebuju nadálku udělat :( no prostě nevyhovuje mi to v tom TR="" nebo TD="" díky ;)
kubatt
Profil
prosím poraďte 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:

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

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