Asp.net mvc 日期选择器和chrome问题

Asp.net mvc 日期选择器和chrome问题,asp.net-mvc,html,jquery-ui,Asp.net Mvc,Html,Jquery Ui,所以我刚刚遇到了这个问题 我使用JQuery UI创建了一个日期选择器,它“映射”到一个只读文本框: $(document).ready(function () { var dateFormatStr = 'yy/mm/dd'; $('#DateOfBirth').datepicker({ dateFormat: dateFormatStr,

所以我刚刚遇到了这个问题

我使用JQuery UI创建了一个日期选择器,它“映射”到一个只读文本框:

$(document).ready(function ()
            {
                var dateFormatStr = 'yy/mm/dd';
                $('#DateOfBirth').datepicker({
                    dateFormat: dateFormatStr,
                    minDate: '-100Y',
                    maxDate: '-18Y',
                    changeMonth: true,
                    changeYear: true
                });

                $('#DateOfBirth').attr('readonly', 'readonly');
});
在我看来,这就是我为约束它所做的:

@Html.LabelFor(m => m.DateOfBirth)
@Html.EditorFor(m => m.DateOfBirth, new { @readonly = "readonly" })
这在IE中运行良好

然而,在Chrome中,情况并非如此。它给出了日期选择器控件的自己的定义,您可以看到它背后的jquery控件!当您尝试设置该值时,它无法设置该值

chrome的行为怪异有什么原因吗?我猜这是因为EditorFor正在绑定DateOfBirth属性,该属性的类型为DateTime

有没有办法阻止这种行为?我相信我在使用TextBoxFor时遇到了问题,不得不使用EditorFor


非常感谢

我没有看到您的
编辑器for
语句中有任何
Id

@Html.EditorFor(m => m.DateOfBirth, new { id="DateOfBirth", @readonly = "readonly" })

不知道这是否是问题所在,我昨天处理了
datepicker
控件,没有任何问题。不幸的是,我无法理解你在Chrome中描述的奇怪行为。

我会尝试Id,但这不是真正的问题。尝试用一些相同的视图/虚拟机打开chrome,我相信你会看到这个问题。