C#では、CultureInfoを取得するために以下のメソッドを使用します。JavaScriptのCultureInfo
System.Globalization.CultureInfo.CurrentCulture.Name // output :en-US
どのようにしてJavaScriptでCultureInfoを取得できますか?
C#では、CultureInfoを取得するために以下のメソッドを使用します。JavaScriptのCultureInfo
System.Globalization.CultureInfo.CurrentCulture.Name // output :en-US
どのようにしてJavaScriptでCultureInfoを取得できますか?
非常に簡単な方法は、このように、ビューにそれをレンダリングすることです:
<script>
var cultureInfo = '@System.Globalization.CultureInfo.CurrentCulture.Name';
</script>
これは、カミソリの構文で、あなたは古典的なasp.netを使用する場合は、使用します。
<script>
var cultureInfo = '<%= System.Globalization.CultureInfo.CurrentCulture.Name %>';
</script>
これは、これがASP.NET Webサイトの場合にのみ機能します。 JavaScriptからCultureInfoにアクセスする一般的な方法はありません。 – schlingel
それは依存しますあなたの目標に。 Webサイト全体をサーバーと同じカルチャとして扱うには、System.Globalization.CultureInfo.CurrentCulture.Nameのみを使用し、最初のコードスニペット内のif-then省略形を削除します。グローバルなウェブサイトを持っている場合は、これはお勧めできません。
<input id="currentCulture" type="hidden" value="<%=((Request.UserLanguages != null && Request.UserLanguages.Length > 0) ? new System.Globalization.CultureInfo(Request.UserLanguages.First(), true).Name : System.Globalization.CultureInfo.CurrentCulture.Name) %>" />
今あなたが使用して、あなたのjavascriptの内、ユーザーに固有の文化情報を取得できます:
$("#currentCulture").val(); //Jquery
document.getElementById("currentCulture").value; //Pure javascript
を背後に、あなたのコード内
は、ページの一番下に次のように含めます、あなたが必要とする日時解析は、以下を使用して、文化情報プロバイダを解析およびtryparseおよびConvert.ToDateTime関数に渡します。
CultureInfo info = ((Request.UserLanguages != null && Request.UserLanguages.Length > 0) ? new CultureInfo(Request.UserLanguages.First(), true) : System.Globalization.CultureInfo.CurrentCulture);
注:Jquery UIを使用しており、デフォルトではカルチャ(en-CAやen-GBなど)が含まれていない場合は、それらを追加する必要があります。 http://stackoverflow.com/questions/673905/を見てみましょう
$.datepicker.regional['en-CA'] = { "Name": "en-CA", "closeText": "Close", "prevText": "Prev", "nextText": "Next", "currentText": "Today", "monthNames": ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", ""], "monthNamesShort": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", ""], "dayNames": ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], "dayNamesShort": ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], "dayNamesMin": ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], "dateFormat": "dd/mm/yy", "firstDay": 0, "isRTL": false };
$(".datepick").datepicker($.datepicker.setDefaults($.datepicker.regional[$("#currentCulture").val()]));
System.Globalization.CultureInfo.Nameは、Webサーバーのカルチャを返しません。 ASP.Netでは、ページのサーバー側コードがエンドユーザーのカルチャー内で実行されます。 – flip
:
https://code.google.com/p/dobo/source/browse/trunk/dobo/Kooboo.CMS/Kooboo.CMS.Web/Scripts/jquery-ui-i18n/?r=7
あなたはその後、以下の例に従うことによって、動的にそれを含めることができます:あなたはここにコードを取得することができますブラウザー内のユーザーのロケールに最も適した方法 –