Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di newlink
    Registrato dal
    Oct 2011
    Messaggi
    206

    Eliminare tag html da stringa

    Ciao a tutti, volevo sapere se era possibile eliminare un tag HTML senza eliminare il contenuto. Faccio un esempio:

    stringa = "

    prova</p>";
    stringa = "prova";

    Ho provato con parentNode.removeChild() ma elimina anche il contenuto.

  2. #2
    Utente bannato
    Registrato dal
    Apr 2009
    Messaggi
    530

    replace() native function

    Se il Tag è conosciuto, sai che è un P :
    codice:
    <script type="text/javascript">
    
    stringa = "
    
    prova</p>";
    
    alert(stringa);
    
    stringa = stringa.replace(/
    
    /, "");
    stringa = stringa.replace(/<\/p>/, "");
    
    alert(stringa);
    
    </script>
    Certo che se però interviene un &#60;p class="capo"&#62; non lo riconosce.


    Si può rendere il replace() global e case-insensitive :

    stringa = stringa.replace(/

    /gi, "");

  3. #3

    Re: Eliminare tag html da stringa

    Originariamente inviato da newlink
    Ciao a tutti, volevo sapere se era possibile eliminare un tag HTML senza eliminare il contenuto. Faccio un esempio:

    stringa = "

    prova</p>";
    stringa = "prova";

    Ho provato con parentNode.removeChild() ma elimina anche il contenuto.
    Il contenuto di un tag puoi estrarlo con il metodo innerHTML:
    codice:
    var contenuto=elementObj.innerHTML;

  4. #4
    Utente di HTML.it L'avatar di newlink
    Registrato dal
    Oct 2011
    Messaggi
    206
    Ciao, ho provato ha scrivere questo:
    codice:
    var elems = show_frame("editArea").getElementsByTagName('*'), i;
    for(i in elems)
     {
      if((' '+elems[i].className+' ').indexOf('light')> -1)
        {
         elems[i].parentNode.innerHTML=elems[i].innerHTML;
        }
      }
    Il tag con la classe viene sovrascritto con il suo contenuto, il problema è che perdo anche tutto il resto del testo come posso risolvere?

  5. #5
    Che intendi con "tutto il resto del testo"?

  6. #6
    Utente di HTML.it L'avatar di newlink
    Registrato dal
    Oct 2011
    Messaggi
    206
    Ad esempio, ho una stringa così costituita:
    "

    prova <span class="light">ricerca</span> prova</p>"

    Dopo il passaggio di quella funzione dovrei avere:
    "prova ricerca prova"

    invece ho:
    "ricerca"

  7. #7
    Il parentNode dello span è il tag p.
    codice:
    var elems = show_frame("editArea").getElementsByTagName('*'), i;
    for(i in elems)
     {
      if((' '+elems[i].className+' ').indexOf('light')> -1)
        {
         var newT = document.createTextNode(elems[i].innerHTML);
         elems[i].parentNode.replaceChild(newT,elems[i]);
        }
      }

  8. #8
    Utente di HTML.it L'avatar di newlink
    Registrato dal
    Oct 2011
    Messaggi
    206
    Ciao grazie mille per la risposta, ma credo che ci sia un errore, se scrivo:



    <span class="light">aa</span> <span class="light">aa</span> <span class="light" >aa</span></p>

    Mi sostituisce correttamente il primo e l'ultimo span ma non quello centrale, sai dirmi il perché?

  9. #9
    Originariamente inviato da newlink
    Ciao grazie mille per la risposta, ma credo che ci sia un errore, se scrivo:



    <span class="light">aa</span> <span class="light">aa</span> <span class="light" >aa</span></p>

    Mi sostituisce correttamente il primo e l'ultimo span ma non quello centrale, sai dirmi il perché?
    Sei certo che non venga sostituito?
    ll replace avviene sul nodo specifico elms[i], non vedo perchè debba avvenire per il primo ed il terzo e non per il secondo.

  10. #10
    Utente di HTML.it L'avatar di newlink
    Registrato dal
    Oct 2011
    Messaggi
    206
    Ciao, ne sono abbastanza sicuro ti mando un mp con il link della pagina

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.