Visualizzazione risultati 1 fino 6 di 6

Discussione: modificare alcune lettere in uno specifico div (javascript)

  1. #1
    Guest

    Predefinito modificare alcune lettere in uno specifico div (javascript)

    salve a tutti =), è da un po che mi chiedo se è possibile sostituire delle parole in un div con delle altre, per esempio:
    io ho
    Codice HTML:
    <div id="prova"><img src="..."></a></div>
    voglio che venga sostituito con
    Codice HTML:
    <div id="prova">&lt;img src="..."&gt;&lt;/a&gt;</div>

  2. #2
    L'avatar di javascripter
    javascripter non è connesso Moderatore
    Data registrazione
    14-02-2010
    Messaggi
    1,114

    Predefinito

    Certo che puoi farlo.

    Ti faccio un esempio:
    Codice:
    var div = document.getElementById("prova");
    div.innerHTML = div.innerHTML.replace(/</g, "&lt;").replace(/>/g, "&gt;");

  3. #3
    Guest

    Predefinito

    yeeee, grazie mille ^^
    ps: ho fatto una piccola prova ma non funge :(
    Codice HTML:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Documento senza titolo</title>
    <script type="text/javascript">
    var div = document.getElementById("prova");
    div.innerHTML = div.innerHTML.replace(/</g, "&lt;").replace(/>/g, "&gt;");
    </script>
    </head>
    
    <body>
    <div id="prova"><img src="#" /></div>
    </body>
    </html>
    Ultima modifica di cactua : 03-04-2011 alle ore 13.55.31

  4. #4
    L'avatar di javascripter
    javascripter non è connesso Moderatore
    Data registrazione
    14-02-2010
    Messaggi
    1,114

    Predefinito

    Non funziona perché nel momento in cui viene eseguito lo script, il div con id prova non è stato ancora caricato dal browser.

    Puoi inserire quel codice nell'evento onload:
    Codice:
    onload = function () {
       var div = document.getElementById("prova");
       div.innerHTML = div.innerHTML.replace(/</g, "&lt;").replace(/>/g, "&gt;");
    };
    Oppure subito dopo il div:
    Codice HTML:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Documento senza titolo</title>
    </head>
    
    <body>
    <div id="prova"><img src="#" /></div>
    <script type="text/javascript">
    var div = document.getElementById("prova");
    div.innerHTML = div.innerHTML.replace(/</g, "&lt;").replace(/>/g, "&gt;");
    </script>
    </body>
    </html>

  5. #5
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,744

    Predefinito

    Più semplicemente:
    Codice HTML:
    <script type="text/javascript">
    var div = document.getElementById("prova");
    div.textContent = div.innerHTML;
    </script>

  6. #6
    Guest

    Predefinito

    ora va =) grazie mille a tutti e 2
    edit: posso fare in modo che i <br /> non siano modificati oppure che vada a capo in automatico?
    Ultima modifica di cactua : 03-04-2011 alle ore 17.43.13

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •