Autor | Zpráva | ||
---|---|---|---|
SeparateSK Profil |
#1 · Zasláno: 8. 1. 2012, 19:08:01 · Upravil/a: SeparateSK
Dobry den, mám takýto script:
<script> function odstranBR(){ var novyText=document.getElementById("text").innerHTML.replace("<br>",""); document.getElementById("text").innerHTML=novyText; } </script> <div id="text" onclick="odstranBR()" style="font-family:verdana;background:#dddddd"> Text <br> Fakt dlhy text<br> Este dlhsi text<br> ... to je toho textu<br> </div> Lenže ono to nevymaže všetko - ono to vymazáva po jednom. V mojich ostatnych scriptoch kde nenahrádzam innerHTML všetko funguje v poriadku. V čom je chyba? |
||
Chamurappi Profil |
#2 · Zasláno: 8. 1. 2012, 19:13:49
Reaguji na SeparateSK:
1) V innerHTML nemusí být řetězec shodný s původním HTML kódem. Při načtení stránky (či obecně HTML fragmentu) se sestaví DOM a při zjišťování innerHTML se z DOMu zpětně sestaví HTML kód — podle toho, jak se prohlížeči zlíbí. Z <br> se může stát <BR> .
2) Metoda replace nahrazuje jen jeden výskyt, pokud je jejím prvním argumentem řetězec.
Použij regulární výraz, globální a nezávislý na velikosti písmen: innerHTML.replace(/<br>/gi, "") .
|
||
SeparateSK Profil |
#3 · Zasláno: 8. 1. 2012, 19:15:45
Ďakujem , teraz všetko funguje na 100%
|
||
Časová prodleva: 12 let
|
0