如何根據用戶瀏覽器自動設置ui文化? 所有我發現這個是Globalize.culture("pt-BR");
但它設置pt-BR
作爲默認,我不想默認設置此!我只想設置這個,如果用戶是PT - BR! 我該怎麼做?而驗證方法,我怎樣才能將它們設置爲特定的文化?根據瀏覽器接受語言自動設置uiCulture
12
A
回答
18
在ASP.NET MVC中,web.config
是正確的地方。有一個快速總結,第一個片段顯示,如何可能是pt-BR
文化被迫
<globalization
enableClientBasedCulture="false"
uiCulture="pt-BR"
culture="pt-BR" />
如果應用程序已準備好接受來自客戶端(瀏覽器)的文化,設置應該
<globalization
enableClientBasedCulture="true"
uiCulture="auto"
culture="auto" />
以上設置將在客戶端瀏覽器中選擇一個語言(如在我的情況下爲cs-CZ
)。如果沒有定義,則會使用系統設置。 最後的片斷顯示,如何讓客戶端設置發送意文化,但如果沒有語言是預先選定的,覆蓋系統與其他一些默認值PT-BR
<globalization
enableClientBasedCulture="true"
uiCulture="auto:pt-BR"
culture="auto:pt-BR" />
設置擴展:爲jQuery
validator
和數字輸入
注區域性設置:我絕對不是在jQuery
和全球化技術方面的專家。這就是例子,我該怎麼辦調整validator
正確處理任何數字輸入
Razor視圖部分(X()
是new HtmlString()
快捷方式):
var defaultThousandSeprator = "@X(culture.NumberFormat.NumberGroupSeparator)";
var defaultDecimalSeprator = "@X(culture.NumberFormat.NumberDecimalSeparator)";
jQuery的部分(最小和最大的自定義方法)
$.validator.addMethod("min", function (value, element, param)
{
var num = value.replace(RegExp(" ", "g"), "") // remove spaces
.replace(RegExp('\\' + defaultThousandSeprator, "g"), "") // thousand separator
.replace(RegExp("\\" + defaultDecimalSeprator, "g"), "."); // fix decimals
return this.optional(element) || num >= param;
});
$.validator.addMethod("max", function (value, element, param)
{
var num = value.replace(RegExp(" ", "g"), "") // remove spaces
.replace(RegExp('\\' + defaultThousandSeprator, "g"), "") // thousands
.replace(RegExp("\\" + defaultDecimalSeprator, "g"), "."); // decimals
return this.optional(element) || num <= param;
});
然後jQuery.validator計算輸入值CS-CZ:10 000,00
正確以及en-US:10,000.00
。
1
你需要寫出從網頁(或母版頁)的腳本:
<script type="text/javascript">
Globalize.culture("<% = CultureInfo.CurrentCulture.ToString() %>");
</script>
就是這樣。請注意,我使用CurrentCulture
而不是CurrentUICulture
,因爲這應該用於格式化。如果你需要翻譯(我不會這樣做,因爲它會傷害localizability),你需要你的原始CurrentUICulture
。
相關問題
- 1. 如何基於瀏覽器接受語言自動設置文化?
- 2. 如何設置接受語言在web瀏覽器
- 3. SharePoint - 根據瀏覽器語言設置更改網站的語言
- 4. 在moment.js中設置瀏覽器語言
- 5. 瀏覽器自動檢測語言
- 6. 根據瀏覽器語言更改語言選擇文本?
- 7. 如何更改瀏覽器接受語言
- 8. 在我的瀏覽器中測試接受語言
- 9. 搜索引擎和瀏覽器接受語言
- 10. JAX-WS如何設置接受語言
- 11. Chromedriver設置單一接受語言
- 12. Kentico訪客網站語言不會根據瀏覽器語言設置而改變
- 13. 根據瀏覽器語言重定向用戶(不在php中)
- 14. htaccess +根據瀏覽器語言重定向用戶
- 15. 如何根據瀏覽器語言選擇文件?
- 16. 根據瀏覽器語言顯示特定的div或內容?
- 17. Spring MVC的:根據瀏覽器的語言
- 18. 瀏覽器語言檢測
- 19. 如何通過瀏覽器的語言在Sitecore中設置上下文語言?
- 20. 根據瀏覽器
- 21. 接受在web瀏覽器
- 22. 如何根據客戶端瀏覽器的語言重寫nginx中的位置?
- 23. 如何設置PhantomJS的瀏覽器語言
- 24. Rails對瀏覽器語言設置的奇怪行爲es-419
- 25. 操作系統區域設置和瀏覽器語言
- 26. 如何在Cucumber/Capybara中設置瀏覽器語言?
- 27. 檢測自動定位的瀏覽器語言
- 28. 強制URL中的語言。如果URL沒有語言,根據瀏覽器語言重定向
- 29. 更新JSTL動態語言環境,不論瀏覽器區域設置
- 30. 基於瀏覽器語言環境/位置的自動日期格式化
但在jQuery驗證器中改變這種doest'n影響(驗證保持不變),所以我需要用Globalize.js改變文化。 – MuriloKunze
好的,我不知道Globalize.js。爲了處理JS的東西,我使用了動態生成的JS變量,例如:'var defaultCulture =「@(CultureInfo.CurrentCulture.Name)」';然後擴展JS組件,比如'$ .datepicker.regional [defaultCulture || ''];'。但我的回答是解釋如何允許使用客戶文化,就像你問的那樣......可能有默認設置,但是如果提供了客戶端重寫 –
是的,謝謝。但我需要知道如何使用全球化和驗證。 – MuriloKunze