Spaties replacen naar entities
Mark Hogeveen
27/05/2013 15:49:54Hallo ik heb het volgende javascript stukje code:
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 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
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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 > -");
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 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
Gewijzigd op 27/05/2013 15:56:47 door Mark Hogeveen
Er zijn nog geen reacties op dit bericht.