Spaties replacen naar entities

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mark Hogeveen

Mark Hogeveen

27/05/2013 15:49:54
Quote Anchor link
Hallo ik heb het volgende javascript stukje code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var operators = ["<", "+", "-", ">"],
    keywords = ["class"];

function highlight(str) {
    return str.replace(/[^ ]+/g, function(m) {
        if (operators.indexOf(m) > -1)
            return '<span class="operators">' + m + '</span>';
        else if (keywords.indexOf(m) > -1)
            return '<span class="keywords">' + m.replace(/\s/g, '#') + '</span>';
        return m;
    });
}

document.body.innerHTML = highlight("< + class abc > -");


Als je nu bijvoorbeeld " [hier spaties] > [hier spaties] < +" aan de functie meegeeft, dan blijft hij in javascript gewoon hetzelfde, dus er gebeurt niks met de spaties.
Als je het wilt weergeven in HTML, dan worden alle spaties veranderd naar 1 spatie, dus zie je dit:
" > < +"
Javascript doet dat dus niet, maar HTML. Nu wil ik dus de spaties veranderen naar &nbsp; maar niet de spaties in de span tags die javascript erin heeft gezet.
Wat ik dus wil, is een manier om elke spatie te weergeven in HTML. Hoe kan ik dat het beste doen?
Oja, een <pre> tag heb ik al gebrobeerd. Maar dan gebeurt er ook niks. Ik moet dus echt de spaties vervangen naar &nbsp;
Gewijzigd op 27/05/2013 15:56:47 door Mark Hogeveen
 
Er zijn nog geen reacties op dit bericht.



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.