I now use the following:
1) Attaching this (stolen) code somewhere after loading jqueryval etc. (and having the referenced files in place) will have the culture applied to Globalize at the bottom of this code be the benchmark for input validation:
<script type="text/javascript" src="~/Scripts/jquery.globalize/globalize.js"></script>
<script type="text/javascript" src="~/Scripts/jquery.globalize/cultures/globalize.culture.de-DE.js"></script>
<script type="text/javascript">
(function ($, Globalize) {
// Tell the validator that we want numbers parsed using Globalize
$.validator.methods.number = function (value, element) {
var val = Globalize.parseFloat(value);
return this.optional(element) || ($.isNumeric(val));
};
$.validator.methods.min = function (value, element, param) {
var val = Globalize.parseFloat(value);
return this.optional(element) || val >= param;
};
$.validator.methods.max = function (value, element, param) {
var val = Globalize.parseFloat(value);
return this.optional(element) || val <= param;
};
$.validator.methods.range = function (value, element, param) {
var val = Globalize.parseFloat(value);
return this.optional(element) || (val >= param[0] && val <= param[1]);
};
// Tell the validator that we want dates parsed using Globalize
$.validator.methods.date = function (value, element) {
var val = Globalize.parseDate(value);
return this.optional(element) || (val);
};
}(jQuery, Globalize));
$(document).ready(function () {
// Set Globalize to german
Globalize.culture("de-DE");
});
</script>
2) Custom error message if value entered in a field violates verification or user tries to submit with empty value for that field:
@Html.ValidationMessageFor(model => model.Datum, "my custom error message")
It's a pitty, I know I'm a noob but it should definitly be more intuitive to change server AND client side validation to another culture, including all error messages.