私が取り組んでいるサイトでは、ユーザーがブラウザの言語設定を「英語 (英国)」または同等の設定に変更すると、ドル記号 ($) のすべての場所が英国ポンドの記号に変更されます。 (£)。これは正しくないため、禁止する必要があります。誰かが解決策を知っていますか。
サイトのバックエンドは Java でサポートされています。
すべての提案を前もってありがとう。
これは標準的なブラウザの動作ではありません。これが発生している場合は、サーバー側またはクライアント側のアプリケーションのコードが原因である可能性があります。これがどこで発生しているかを把握し、事後ではなく、発生源で無効にします。
ブラウザーは、一般的な通貨記号をそのロケールに関連する文字として解釈する場合があります。
アプリケーションがブラウザーの GET 要求を解釈し、それらからロケールを推測している可能性があります (たとえば、ユーザー エージェントに "en-GB" が含まれている可能性があります)。コードは、指定した一般的な記号を正しい文字に置き換えています。ロケールとそれをブラウザーに送信します。
ドルのみが必要な場合は、ドル記号を指定します。
問題は、金額が単純な数値として保存され、ユーザーが選択したロケールに対して getCurrencyInstance を呼び出して取得した NumberFormat を使用してフォーマットされていることだと思います。金額が常にドル単位である場合、これは間違ったことです。代わりに、ドル記号を含む DecimalFormat を作成します。
ピートのために、Javascript でこれを修正しようとしないでください。