chrissy: Text in Zahl umwandeln abhängig von Sprache

Beitrag lesen

Hallo,

@Don: ich arbeite mit Oracle Application Express, zwar weiß ich dass in das die Datenbank '.' einen Punkt erwartet, aber ApEx scheint intern eine Funktion laufen zu lassen, die Zahlen entsprechend umformatiert.
Das heißt, wenn mein Browser auf Deutsch steht, erwartet ApEx ein Komma, wenn der Browser auf Englisch steht einen Punkt etc.
Nun mache ich aber Berechnungen mit Javascript und mache daher einen replace Komma gegen Punkt, aber fürs Schreiben in die Datenbank muss ich den Punkt wieder zurücktauschen wenn notwendig.

@Struppi: DecimalFormat kann nicht hellsehen, aber man kann lokale einstellungen setzen und entsprechend den DecimalSeparator abfragen.

Ich habe jetzt folgende Lösung:

function myFunction()
{
  var el1 = document.getElementById('TEST1').value;

if (el1.indexOf('.') != -1)
 {
   var lang = document.getElementsByTagName("html")[0].getAttribute('lang');
   if (lang.indexOf("-") != -1)
     lang = lang.substring(0, lang.indexOf("-"));
   var pDec = new java.text.DecimalFormatSymbols(new java.util.Locale(lang));
   var pSep = String.fromCharCode(pDec.getDecimalSeparator());

el1.replace(/./g, pSep);
}

Im Moment ersetzt er zwar noch falsch, aber das wird schon noch werden.

Danke für eure Hilfe
chrissy