ASP.NETを使用している場合は、ASP.NETAjaxも使用している可能性があります。その場合、 ScriptManagerには次の2つのプロパティがあります。
EnableScriptLocalization -ScriptManagerコントロールがスクリプトファイルのローカライズされたバージョンをレンダリングするかどうかを示す値を取得または設定します。
EnableScriptGlobalization -ScriptManagerコントロールがカルチャ固有の情報の解析とフォーマットをサポートするスクリプトをレンダリングするかどうかを示す値を取得または設定します。
<asp:ScriptManager ID="AjaxManager" runat="Server" EnablePartialRendering="true"
EnableScriptGlobalization="true" EnableScriptLocalization="true" />
これらの両方を有効にすると(trueに設定)、ASP.NETAjaxエクステンダーなどがweb.configで指定されたカルチャに自動的にローカライズされます。
<configuration>
<system.web>
<globalization
fileEncoding="utf-8"
requestEncoding="utf-8"
responseEncoding="utf-8"
culture="en-GB"
uiCulture="en-GB" />
</system.web>
</configuration>
たとえば、これを設定すると、AjaxControlToolkitカレンダーが特定のカルチャにローカライズされます。
ASP.NET Ajaxを使用していない場合でも、ScriptManagerを追加してローカリゼーションを有効にすると__cultureInfo
、通貨や日付などのローカライズされた形式のJSON配列を含むと呼ばれる便利なjavascript変数が得られます。
"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":true},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss etc....