gpt4 book ai didi

c# - 该字段必须是日期 - DatePicker 验证在 Chrome 中失败 - mvc

转载 作者:IT王子 更新时间:2023-10-29 04:18:59 25 4
gpt4 key购买 nike

我有一个奇怪的问题。我的日期验证在 Chrome 中不起作用。我试过了 this回答,但它对我不起作用。

我的模型中有这个:

[Display(Name = "Date")]
[DataType(DataType.Date)]
public DateTime Date { get; set; }

我的看法:

<div class="editor-field">
@Html.TextBoxFor(model => model.Item.Date, new { @class = "picker" })
@Html.ValidationMessageFor(model => model.Item.Date)
</div>

$(document).ready(function () {
$('.picker').datepicker({
dateFormat: 'dd.mm.yy',
changeMonth: true,
changeYear: true,
selectOtherMonths: true
});
});

在 Opera 和 Firefox 中一切正常,但 Chrome 不喜欢这种类型的日期。我不断收到以下错误 The field 'Date' must be a date

有什么想法吗?

更新

当代码在局部 View 中时,似乎有问题。当我将该代码复制到主页时,验证工作正常。

我在主视图中插入部分 View ,就像这样:

@Html.Partial("_CreateOrEdit", Model)

上面的代码在局部 View 中:

@model Pro.Web.Models.Model

<div class="editor-field">
@Html.TextBoxFor(model => model.Item.Date, new { @class = "picker" })
@Html.ValidationMessageFor(model => model.Item.Date)

$(document).ready(function () {
$('.picker').datepicker({
dateFormat: 'dd.mm.yy',
changeMonth: true,
changeYear: true,
selectOtherMonths: true
});

</script>
});

更新 2

终究是不行的。有时有效,有时无效。我在日期上点击了几次,有时验证通过了。对于同一日期,可能会有好的和错误的验证。

这是日期字段的输出 html:

<div class="editor-field">
<input class="picker" data-val="true" data-val-date="The field Date must be a date." data-val-required="The Date field is required." id="date" name="Item.Date" type="text" value="1.1.0001. 0:00:00" />
<span class="field-validation-valid" data-valmsg-for="Item.Date" data-valmsg-replace="true"></span>
</div>

最佳答案

这里完全一样的情况(局部 View )

我通过删除验证属性并在服务器端执行验证解决了这个问题:

$('#date').removeAttr("data-val-date");

关于c# - 该字段必须是日期 - DatePicker 验证在 Chrome 中失败 - mvc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16284385/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com