• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Zifferngruppierung

Status
Für weitere Antworten geschlossen.

vulli

Neues Mitglied
hi !
Wie kann ich bei Textfeldern eine Zifferngruppierung einstellen ??

Angenommen ich habe ein Formular mit 2 Textfeldern die addiert werden sollen,

100.000 + 10.000 normalerweise würde da 110 rauskommen

wie kann ich eine zifferngruppierung einschalten sodass

100.000 + 10.000 = 110.000 ergeben ??

gruß vulli
 
Werbung:
Werbung:
Werbung:
punkte wegmachen bringt nix, da du ja dann z.b. "500'000.50" nicht richtig berechnest. du musst auf jeden fall den integer parsen. Hier mal ne idee:

* Wenn ein ' oder ein , vorkommt dann trennt der . IMMER dezimalstellen
* Wenn ein . vorkommt und die stellen dahinter != 3 sind, dann ist's auch ne trennung von dezimalstellen

Diese bedingungen sollten genuegen in 90% der faelle ;)

es ist aber generell schlechter stil wenn man dieselben zeichen fuer verschiedene zwecke zulaesst.
 
give a man a fish and feed him for a day, show him how to fish and you feed him for life...

hier hast du einen auszug aus meiner homepage. macht, soweit ich mich noch erinnern kann, was du wolltest. umcoden tu ich nicht, wenn du willst dass ich was fuer dich programmiere: mein stundensatz betraegt 30 euro :)

Code:
<SCRIPT language="JavaScript">
<!-- function 2005 (c) Raphael Pirker - [url]www.whiz-mail.cc[/url]

function wm_validDollarAmount(field,label,required,error) {
        if (field.value.substring(0,1) != "$") field.value = "$"+field.value;
        if (field.value.indexOf(",") > 0) {
        	while (field.value.indexOf(",") > 0) {
       			field.value = field.value.substring(0,field.value.indexOf(","))+"."+field.value.substring(field.value.indexOf(",")+1);
        	}
        }
        if (field.value.indexOf("'") > 0) {
        	while (field.value.indexOf("'") > 0) {
        		field.value = field.value.substring(0,field.value.indexOf("'")) + field.value.substring(field.value.indexOf("'")+1);
        	}
        }
        if (field.value.indexOf(".") > 0) {
        	while (field.value.indexOf(".") != field.value.lastIndexOf(".")) {
       			field.value = field.value.substring(0,field.value.indexOf("."))+""+field.value.substring(field.value.indexOf(".")+1);
        	}
        }
        str = field.value;
        if (required == 'true') {
        	if (str.length == 0) str = 'a';
        }
        charset = "$.0123456789";
        result = true;
	for (var i=0;i<str.length;i++) {
		if (charset.indexOf(str.substr(i,1))<0) {
			result = false;
			break;
		}
	}
	if (!result) {
		error = error+"Please enter a valid dollar amount ($xxx.xx) into the \""+ label +"\" field\n";
	}
	return error;
}

// -->
</SCRIPT>

hth
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben