2017-05-24 2 views
3

So war ich auf einer Website arbeiten, und ich wurde mit dem folgenden Javascript-CodeKultur bestimmte Währung für eine bestimmte Kultur

UsdAmount.toLocaleString(siteCulture, 
     {style: 'currency', currency: 'USD'}) 
CadAmount.toLocaleString(siteCulture, 
     {style: 'currency', currency: 'CAD'}) 

Und es funktioniert gut mit dem erwarteten Ergebnissen

Damit

Culture  Currency Output 
en-us  USD   $123.45 
en-us  CAD   CA$123.45 
en-ca  USD   US$123.45 
en-ca  CAD   $123.45 

Aber diese Funktion funktioniert nicht in Safari, daher kann ich es nicht verwenden.

So denke, ich werde ich es gerade Seite auf dem Server zu tun in C# und die Zeichenfolge

passieren Aber das scheint nicht

  1. ich zwei Kulturen passieren kann aus zwei Gründen nicht zu arbeiten, eine Systemkultur und eine Währung Kultur
  2. scheinen nicht, da

    4.ToString("C", new CultureInfo("en-us")) ==> "$4.00" 
    4.ToString("C", new CultureInfo("en-ca")) ==> "$4.00" // No CA$ 
    
irgendeine Art und Weise zu arbeiten,

Also irgendwelche anderen Ideen zur Formatierung von Währung, die über alle Browser funktioniert?

+1

Die serverseitige Vorbereitung ist immer eine gute Idee. Können Sie Ihre eigenen Regeln implementieren? –

+0

im Moment schaue ich in regelmäßigen Ausdruck ... die Probleme sind, ich kenne nicht die internationalen Regeln zu folgen – Mike

+0

In Ländern mit dem Euro seine 123, 45 €. Das ist alles, was ich kann Ihnen helfen (nicht wissen, C und Regex ...) –

Antwort

0

Wenn Sie auf einem Server laufen, der WinRT unterstützt (Windows 8 oder höher), können Sie die currency formatter verwenden, die das macht, was Sie wollen.