jquery ui日期选择器和mvc视图模型类型datetime

jquery ui日期选择器和mvc视图模型类型datetime,jquery,asp.net-mvc,datetime,datepicker,viewmodel,Jquery,Asp.net Mvc,Datetime,Datepicker,Viewmodel,我在视图模型上使用jquery日期选择器 以下是我的看法: @Html.TextBoxFor(o => o.JobStartDate, new { id = "dt1", @class = "input-block-level" }) @Html.ValidationMessage("JobStartDate") 还有我的剧本: $("#dt1").datepicker({ dateFormat: "dd/mm/yy" }); 如果我的日期为=12,一切正常。您需要创建一个自定义验证器

我在视图模型上使用jquery日期选择器

以下是我的看法:

@Html.TextBoxFor(o => o.JobStartDate, new { id = "dt1", @class = "input-block-level" })
@Html.ValidationMessage("JobStartDate")
还有我的剧本:

$("#dt1").datepicker({ dateFormat: "dd/mm/yy" });

如果我的日期为=12,一切正常。

您需要创建一个自定义验证器。您需要修改属性以采用字符串值,如下所示

public string JobStartDate {get; set; }
然后,您需要像这样创建自定义验证器

public class CheckDateAttribute : ValidationAttribute
{
    protected override ValidationResult IsValid(object value, ValidationContext validationContext) {
        // Validate your Date here
    }
}
在这之后,你将只是装饰你的财产-

[CheckDate]
public string JobStartDate {get; set;}

这是一个关于

的好教程,您需要创建一个自定义验证器。您需要修改属性以采用字符串值,如下所示

public string JobStartDate {get; set; }
然后,您需要像这样创建自定义验证器

public class CheckDateAttribute : ValidationAttribute
{
    protected override ValidationResult IsValid(object value, ValidationContext validationContext) {
        // Validate your Date here
    }
}
在这之后,你将只是装饰你的财产-

[CheckDate]
public string JobStartDate {get; set;}
这是一个关于

的很好的教程,您可以看看如何使用,或者在脚本中添加以下内容(当然,假设服务器区域性日期格式为“dd/MM/yyyy”)

请使用
@Html.ValidationMessageFor(m=>m.JobStartDate)

您可以查看使用或将以下内容添加到脚本中(当然,假设服务器区域性日期格式为'dd/MM/yyy')

请使用
@Html.ValidationMessageFor(m=>m.JobStartDate)

此处MVC视图模型:

    public DateTime? date { get; set; }
这是用于脚本的:

    $('.DatePickers').datetimepicker({
        timepicker: false,
        format: 'd-M-Y',
        scrollInput: false,
        closeOnDateSelect: true
    });
只读日期选择器的按键事件

    $(".DatePickers").keypress(function (event) { event.preventDefault(); });
这里是MVC视图模型:

    public DateTime? date { get; set; }
这是用于脚本的:

    $('.DatePickers').datetimepicker({
        timepicker: false,
        format: 'd-M-Y',
        scrollInput: false,
        closeOnDateSelect: true
    });
只读日期选择器的按键事件

    $(".DatePickers").keypress(function (event) { event.preventDefault(); });

这不会进行客户端验证(当然也不会解决OP问题),您永远不应该使用
string
作为日期!这不会进行客户端验证(当然也不会解决OP问题),您永远不应该使用
string
作为日期!