0

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

我正在使用 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。

非常感谢

4

1 回答 1

0

我没有看到Id你的EditorFor说法。

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

不知道是不是这个问题,我datepicker昨天在控制上工作,我没有问题。不幸的是,我无法理解您在 Chrome 中描述的奇怪行为。

于 2013-10-08T21:47:55.897 回答