Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: string.replace() i usuwanie znacznika <p>
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
marcini82
Witam!

Chce usunac z tekstu znaczniki <p> i </p>:
  1. tresc = tresc.replace('<p>', '');
  2. tresc = tresc.replace('</p>', '');

Działa w FF, ale w Operze i IE nie usuwa znaczników. Inne elementy tekstu usuwa poprawnie.
A do tego Opera i IE wstretnie zamieniaja <p> na <P>, co sie gryzie z wymaganiami XHTML.

Dlaczego? Jak inaczej usunac wybrane znaczniki HTML z tekstu?
skowron-line
  1. <?php
  2. $array = array("<p>","</p>");
  3.  
  4. $replace = str_replace($array," ",$tekst);
  5. ?>


str_replace
gekon
W3Schools:
  1. tresc = tresc.replace(/<p>/g, '').replace(/<\/p>/g, '')
marcini82
Dzieki gekon, naprowadziles mnie na wlasciwy trop. A problem tkwil w tym, ze IE i Opera tagi HTML podaja duzymi literami (mimo, ze w kodzie strony jest malymi). Wiec trzeba bylo wlaczyc tryb case-insensitive:
  1. tresc = tresc.replace(/<p>/gi, '');
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.