1 |
1 2 3 4 5 6 7 | { var fso = new ActiveXObject("Scripting.FileSystemObject"); var FileObject = fso.OpenTextFile("C:\Temp\PimFile.txt", 2, true,0); // 8=append, true=create if not exist, 0 = ASCII FileObject.write(sText) FileObject.close() } |
1 2 | inhoud.replace("n","rn"); |
nee met document.naam.valuequote:Op woensdag 28 februari 2007 09:10 schreef Geqxon het volgende:
En hoe roep je sText aan, met een "this.value" ?
Als workaround zou je kunnen werken met een string replace:
[ code verwijderd ]
1 |
quote:Op woensdag 28 februari 2007 09:16 schreef Swetsenegger het volgende:
hij kan ik trouwens een string aanvullen met 0'en tot een bepaalde lengte?
1 2 3 4 5 6 7 8 | var teststring = 'jan'; var padlength = 20; var stringlength = teststring.length; for (var i = 0; i < (padlength - stringlength); i++){ teststring += pad; } |
Ah ok, er is geen standaard functie dusquote:Op woensdag 28 februari 2007 09:25 schreef Geqxon het volgende:
[..]
[ code verwijderd ]
Zo uit mijn hoofd, moet het nog even debuggen. Helaas heeft javascript niet een soort van str_pad (string pad), in ieder geval niet voor zover ik dat kan zien.
/edit: Denkfoutje gefixt.
1 2 3 4 5 6 7 | var teststring = 'jan'; var padlength = 20; while (teststring.length < padlength){ teststring += pad; } |
1 2 3 4 5 6 7 | { if (char==null) char='_'; var t=this; while(t.length<len) t+=char; return t; }; |
1 2 3 | document.write(str.pad(10,'x')); //writes halloxxxxx; document.write(str.pad(10)); //writes hallo_____; |
Dit is zeker handig zeg!quote:Op woensdag 28 februari 2007 10:38 schreef ralfie het volgende:
[ code verwijderd ]
krijgen je strings een handige pad functie erbij
[ code verwijderd ]
Altijd makkelijk als je zoiets vaker moet gebruiken
Default padden met een underscore vind ik een beetje vreemd (is natuulijk makkelijk aan te passen). Als de padding langer is dan 1 teken dan klopt de lengte niet altijd. Als je veel moet padden kan ie wel eens langzaam worden.quote:Op woensdag 28 februari 2007 10:38 schreef ralfie het volgende:
[ code verwijderd ]
krijgen je strings een handige pad functie erbij
[ code verwijderd ]
Altijd makkelijk als je zoiets vaker moet gebruiken
*bekijkt code*quote:Op woensdag 28 februari 2007 13:56 schreef SuperRembo het volgende:
Als de padding langer is dan 1 teken dan klopt de lengte niet altijd.
als je padding bijv 3 tekens is, wordt de uiteindelijke string langer als wat ie had moeten zijn, bijquote:Op woensdag 28 februari 2007 15:13 schreef Swetsenegger het volgende:
[..]
*bekijkt code*
die snap ik niet?
1 2 3 | str.pad(10,"hoi") // geeft hallohoihoi, wat 11 tekens is |
Ik had er nog niet eens bij nagedacht dat je padding langer zou willen maken dan 1 teken, maar ja... dan heb je inderdaad een probleem.quote:Op woensdag 28 februari 2007 15:41 schreef ralfie het volgende:
[..]
als je padding bijv 3 tekens is, wordt de uiteindelijke string langer als wat ie had moeten zijn, bij
[ code verwijderd ]
Wat op te lossen is door met de substrings van de padding te gaan werken, en te breaken als de lengte te lang is.quote:Op woensdag 28 februari 2007 15:41 schreef ralfie het volgende:
[..]
als je padding bijv 3 tekens is, wordt de uiteindelijke string langer als wat ie had moeten zijn, bij
[ code verwijderd ]
quote:Op woensdag 28 februari 2007 15:45 schreef Geqxon het volgende:
[..]
Wat op te lossen is door met de substrings van de padding te gaan werken, en te breaken als de lengte te lang is.
1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | String.prototype._padHelper = function(totalLength, paddingString, isRightPadding) { var padding = paddingString; if (!padding || padding.length == 0) padding = ' '; var s = this.toString(); var padLength = totalLength - s.length; if (totalLength >= 0) { while (padding.length < padLength) padding += padding; if (isRightPadding) { s += padding.substr(padding.length - padLength); } else { s = padding.substr(0, padLength) + s; } } return s; }; // Pads a string on the left with a specified padding string to a specified total length. String.prototype.padLeft = function(totalLength, paddingString) { return this._padHelper(totalLength, paddingString, false); }; // Pads a string on the right with a specified padding string to a specified total length. String.prototype.padRight = function(totalLength, paddingString){ return this._padHelper(totalLength, paddingString, true); }; |
1 2 3 4 5 6 7 8 9 | out.push('foo'.padLeft(5)); out.push('foo'.padLeft(5, 'x')); out.push('foo'.padRight(5)); out.push('foo'.padRight(5, 'x')); out.push('foobarbaz'.padLeft(5, 'x')); out.push(''.padLeft(5, 'x')); out.push(''.padLeft(5, '')); alert('"' + out.join('"\n"') + '"'); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | function elf_proef(id) { var bankrekeningnummer = document.getElementById(id).value; //Verwijder alle tekens die geen cijfers zijn bankrekeningnummer = bankrekeningnummer.replace(/D/g, ""); aantal_tekens = bankrekeningnummer.length; var som=0; // loop door de 9 cijfers met de 11 proef formule for (i=1; i<10; i++) { getal=bankrekeningnummer.charAt(i-1); som+=getal*(10-i); } // geef resultaat van check terug if (som % 11==0 && aantal_tekens==9) { document.getElementById(id).value = bankrekeningnummer; return true; } else { alert('Dit is geen geldig bankrekeningnummer!'); document.getElementById(id).value = bankrekeningnummer; document.getElementById(id).focus(); } } </script> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |