JQuery Datepicker不会发布英国日期字符串

Dev*_*ave 5 jquery post datepicker razor asp.net-mvc-3

如果问题很明显但我无法弄清楚为什么它突然不起作用,我深表歉意.我有一个jquery datepicker,只要我记得就一直工作正常,但突然间,当我尝试提交datepicker在datepicker上的表单重新出现时,好像我提交的日期无效.我已经使用以下代码行将我的日期设置为英国风格:

    <script type="text/javascript">
    $(document).ready(function () {
        $('.date').datepicker({ dateFormat: "dd/mm/yy", minDate: 0 });

    }); 
    </script>
Run Code Online (Sandbox Code Playgroud)

我在我的视图中设置了datepicker,如下所示:

@Html.TextBox("DateDue", "", new { @class = "date" })
Run Code Online (Sandbox Code Playgroud)

我认为有些事情要求选择的日期字符串采用美国格式(因为它将提交有效的我们日期(mm/dd/yyyy),但不提供英国格式,即使它已在javascript中设置.

我错过了一些明显的东西吗 谁能告诉我这里我做错了什么?

我不确定是否有必要,但是datepicker所在的表单是这样创建的:

@using (
    Html.BeginForm(
        Html.BeginForm(
            "Create",
            "Task",
            FormMethod.Post,
            new { id = "taskCreateForm" }
        )
    )
)
Run Code Online (Sandbox Code Playgroud)

PS.日期字符串实际上有效,并且在Firefox中没有问题但在Chrome中没有问题

任何帮助赞赏

编辑:

当我禁用不显眼的js验证时,问题就消失了:

<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")"
        type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)

我有一种感觉,它与此有关,并试图从模型注释中删除[Required]和[DataType(DataType.Date)],但这并没有成功.

不知道怎么留下不引人注目的js以及让英国日期字符串正常工作,但我越来越多地转向为表单编写我自己的javascript验证而不是甚至打扰内置的东西,这似乎从来没有用过比"必需的"验证检查更复杂的事情..

Pat*_*cia 2

谷歌搜索给出了很多与本地化/全球化 asp.net mvc 3 验证相关的结果。

这篇文章尤其可能涉及以下内容:

http://www.hanselman.com/blog/GlobalizationInternationalizationAndLocalizationInASPNETMVC3JavaScriptAndJQueryPart1.aspx

向下滚动到:“全球化 jQuery 非侵入性验证”

这个问题的答案也可能有帮助: Localizing jqueryvalidation with asp.net mvc 3

jQuery 允许您覆盖不同的验证函数,如下所示:

 $.validator.methods.number = function (value, element) {
     return !isNaN($.parseFloat(value));
 }
Run Code Online (Sandbox Code Playgroud)

您可以对日期验证器执行类似的操作,然后针对有效的英国日期的正则表达式运行它。