Toon posts:

[JS] js var in html uitprinten

Pagina: 1
Acties:

Verwijderd

Topicstarter
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<html>
   <head>
      <script language="javascript">
         var msg;

     function get_msg() {
        var query_str = window.location.search.substring(1);
        var tmp = query_str.split("=");
        msg = tmp[1];
     }
      </script>
   </head>
   <body style="background-color: #FFFF99" leftmargin="30" onBlur="close_confirmation()" style="backgrond-repeat:no-repeat">
      <center><b><p>!!! hier moet de waarde van msg komen te staan !!!</p></b></center>
      <br>
      <center><input type="button" class="button" value="OK" onClick="self.close()" style="font-size: 8pt; width: 40"></center>
   </body>
</html>


ik wil dus de var msg printen in de body (zie hierboven waar). hoe doe ik dit?

  • marty
  • Registratie: Augustus 2002
  • Laatst online: 27-03-2023
deze post voldoet geloof ik niet echt aan de gestelde eisen. Dus even snel de FAQ doorlezen als je een slotje wil voorkomen.
kleine schop in de goede richting: ga bvb eens zoeken op innerHTML

  • Koeniepoenie
  • Registratie: Oktober 2003
  • Laatst online: 28-04 21:14
Als je de <p> een id meegeeft.

code:
1
<p id="resultTekst">Blaat</p>


Kun je met het DOM gemakkelijk tekst erin gooien:

JavaScript:
1
document.getElementById('resultTekst').firstChild.nodeValue = 'woei';

Parse error: syntax error, unexpected GOT_USER in https://gathering.tweakers.net on line 1337


Verwijderd

Topicstarter
dankje jullie wel voor de reacties

  • dominic
  • Registratie: Juli 2000
  • Laatst online: 08-02 14:55

dominic

will code for food

Koeniepoenie schreef op maandag 22 augustus 2005 @ 14:58:
Als je de <p> een id meegeeft.

code:
1
<p id="resultTekst">Blaat</p>


Kun je met het DOM gemakkelijk tekst erin gooien:

JavaScript:
1
document.getElementById('resultTekst').firstChild.nodeValue = 'woei';
nodeValue!?

Waarom niet gewoon InnerText/InnerHTML?

Download my music on SoundCloud


Verwijderd

ik vind DOM gewoner eigenlijk...

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

let sowieso op dat je de boel wel HTMLencode...

Intentionally left blank


Verwijderd

Topicstarter
crisp schreef op maandag 22 augustus 2005 @ 15:22:
let sowieso op dat je de boel wel HTMLencode...
wat bedoel je hier mee?
snap je niet sorry.

Verwijderd

Topicstarter
Probleem is nu dat msg %20 (spaties) bevat en deze worden uitgeprint door de browser. Hoe kan ik van %20 af (hoe kan ik daar echte spaties van maken)?

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 22-03 18:12
Die %20 krijg je weg door er eerst een unescape overheen te gooien.
Overigens vind ik deze methode nog beter om de waarde van msg in het p element te krijgen:
JavaScript:
1
document.getElementById('resultTekst').appendChild(document.createTextNode(unescape(msg)));

Dan hoef je zelf ook geen rekening te houden met encoden, zoals crisp dat aangeeft. Anders zou je gebruik moeten maken van de escape() functie. Als je wel voor deze methode kiest, dan moet je uiteraard bij de 2de keer dan wel de gehele inhoud van resultTekst leeg halen. Dat kan gemakkelijk op zo'n manier (de nette manier):

JavaScript:
1
while ( element.hasChildNodes() ) element.removeChild(element.firstChild);

[ Voor 8% gewijzigd door Michali op 23-08-2005 11:04 ]

Noushka's Magnificent Dream | Unity


Verwijderd

Topicstarter
Michali schreef op dinsdag 23 augustus 2005 @ 11:04:
Die %20 krijg je weg door er eerst een unescape overheen te gooien.
Overigens vind ik deze methode nog beter om de waarde van msg in het p element te krijgen:
JavaScript:
1
document.getElementById('resultTekst').appendChild(document.createTextNode(unescape(msg)));

Dan hoef je zelf ook geen rekening te houden met encoden, zoals crisp dat aangeeft. Anders zou je gebruik moeten maken van de escape() functie. Als je wel voor deze methode kiest, dan moet je uiteraard bij de 2de keer dan wel de gehele inhoud van resultTekst leeg halen. Dat kan gemakkelijk op zo'n manier (de nette manier):

JavaScript:
1
while ( element.hasChildNodes() ) element.removeChild(element.firstChild);
dank je wel! :*)

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

escapen != encoden, maar zoals Michali aangeeft hoef je je om encoding geen zorgen te maken als je puur werkt met textNodes. In het geval dat je innerHTML of document.write zou gebruiken is dit wel een handige functie om de boel te HTMLencoden:
JavaScript:
1
2
3
4
5
6
7
8
9
function HTMLencode(string)
{
    string = string.replace(/&/g, '&');
    string = string.replace(/</g, '<');
    string = string.replace(/>/g, '>');
    string = string.replace(/"/g, '"');

    return string;
}

[ Voor 4% gewijzigd door crisp op 23-08-2005 14:58 ]

Intentionally left blank

Pagina: 1