

Javascriptden Anlayanlar, Şu Kodda Çok Ufak Değişiklik
-
arkadaşlar aşağıdaki kodu html olarak kaydedin, rakamları fiyat formatına sokuyor yani 600 000 şeklinde ama ben boşluk yerine noktalı olarak düzenlemesini istiyorum yani şu şekilde 600.000
kodu istediğim şekilde düzenleyebilirseniz çok makbule geçer
:( ulen musket olsaydı hemen alta cevap atardı, anmadan geçemicem :(((
<html>
<head>
<script type="text/javascript">
window.onload = attachEvents;
function attachEvents() {
document.getElementById('myInput').onkeyup = reformatNumber;
}
function reformatNumber() {
// No error checking. Assumes only ever 1 DP per number
var text = this.value;
// Strip off anything to the right of the DP
var rightOfDp = '';
var dpPos = text.indexOf('.');
if (dpPos != -1) {
rightOfDp = text.substr(dpPos);
text = text.substr(0, dpPos);
}
var leftOfDp = '';
var counter = 0;
// Format the remainder into 3 char blocks, starting from the right
for (var loop=text.length-1; loop>-1; loop--) {
var char = text.charAt(loop);
// Ignore existing spaces
if (char == ' ') continue;
leftOfDp = char + leftOfDp;
counter++;
if (counter % 3 == 0) leftOfDp = ' ' + leftOfDp;
}
// Strip leading space if present
if (leftOfDp.charAt(0) == ' ') leftOfDp = leftOfDp.substr(1);
this.value = leftOfDp + rightOfDp;
}
</script>
</head>
<body>
<form>
<input type="text" id="myInput" />
</form>
</body>
</html> -
Allah rahmet eylesin :(
<html>
<head>
<script type="text/javascript">
window.onload = attachEvents;
function attachEvents() {
document.getElementById('myInput').onkeyup = reformatNumber;
}
function reformatNumber() {
// No error checking. Assumes only ever 1 DP per number
var text = this.value;
// Strip off anything to the right of the DP
var rightOfDp = '';
var dpPos = text.indexOf('.');
if (dpPos != -1) {
rightOfDp = text.substr(dpPos);
text = text.substr(0, dpPos);
}
var leftOfDp = '';
var counter = 0;
// Format the remainder into 3 char blocks, starting from the right
for (var loop=text.length-1; loop>-1; loop--) {
var char = text.charAt(loop);
// Ignore existing spaces
if (char == '.') continue;
leftOfDp = char + leftOfDp;
counter++;
if (counter % 3 == 0) leftOfDp = '.' + leftOfDp;
}
// Strip leading space if present
if (leftOfDp.charAt(0) == '.') leftOfDp = leftOfDp.substr(1);
this.value = leftOfDp + rightOfDp;
}
</script>
</head>
<body>
<form>
<input type="text" id="myInput" />
</form>
</body>
</html>
-
hocam tşkler ama olmadı...
-
noktalı virgül koymuştum editledim
-
denedim ama sadece ilk rakamdan sonra nokta koyuyor, benim istediğim her ayrıldığı ondalık kısımlara boşluk yerine nokta konulması
mesela
5.000.000
50.000
500.000
-
up
kısacası her üç rakamdan önce nokta koymasını istiyorum
örnek:
1.000
10.000
100.000
1.000.000
10.000.000
100.000.000 -
<html>
<head>
<script type="text/javascript">
window.onload = attachEvents;
function attachEvents() {
document.getElementById('myInput').onkeyup = reformatNumber;
}
function reformatNumber() {
// No error checking. Assumes only ever 1 DP per number
var text = this.value;
// Strip off anything to the right of the DP
var rightOfDp = '';
var dpPos = text.indexOf('.');
if (dpPos != -1) {
rightOfDp = text.substr(dpPos);
text = text.substr(0, dpPos);
}
var leftOfDp = '';
var counter = 0;
// Format the remainder into 3 char blocks, starting from the right
for (var loop=text.length-1; loop>-1; loop--) {
var char = text.charAt(loop);
// Ignore existing spaces
if (char == '.') continue;
leftOfDp = char + leftOfDp;
counter++;
if (counter % 3 == 0) leftOfDp = '.' + leftOfDp;
}
// Strip leading space if present
if (leftOfDp.charAt(0) == '.') leftOfDp = leftOfDp.substr(3);
this.value = leftOfDp + rightOfDp;
}
</script>
</head>
<body>
<form>
<input type="text" id="myInput" />
</form>
</body>
</html>
denermisin bi