我在我的网页上使用HTML5元素.默认输入type="date"显示日期为YYYY-MM-DD.
问题是,是否可以将其格式更改为:DD-MM-YYYY?
我在我的模型中使用DataType.Date属性,在我的视图中使用EditorFor.这在Internet Explorer 8和Internet Explorer 9中运行良好,但在谷歌浏览器中它显示日期选择器,而不是显示值,它只是在褪色的灰色文本中显示"月/日/年".
为什么Google Chrome不会显示价值?
模型:
[DataType(DataType.Date)]
public Nullable<System.DateTime> EstPurchaseDate { get; set; }
Run Code Online (Sandbox Code Playgroud)
视图:
<td class="fieldLabel">Est. Pur. Date</td>
<td class="field">@Html.EditorFor(m=>m.EstPurchaseDate)</td>
Run Code Online (Sandbox Code Playgroud)


我正在做一个简单的MVC4互联网应用程序,它允许在类别中添加一些项目.
这是我到目前为止所做的.
我在mvc视图中有一个日期选择器.datepicker的脚本是这样的.
<script src="@Url.Content("~/Scripts/jquery-1.7.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.20.min.js")" type="text/javascript"></script>
@Scripts.Render("~/bundles/jqueryval")
<script type="text/javascript">
$(function () {
$('#dtItemDueDate').datepicker({
dateFormat: 'dd/mm/yy',
minDate: 0
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
我的模特财产:
[DisplayName("Item DueDate")]
[Required]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}",ApplyFormatInEditMode = true)]
[DataType(DataType.DateTime)]
public DateTime? dtItemDueDate { get; set; }
public char charCompleted { get; set; }
Run Code Online (Sandbox Code Playgroud)
在我看来,我做到了这一点:
@Html.TextBoxFor(m => m.dtItemDueDate)
@Html.ValidationMessageFor(m => m.dtItemDueDate)
Run Code Online (Sandbox Code Playgroud)
错误是这样的:
The field Item DueDate must be a date.
Run Code Online (Sandbox Code Playgroud)
奇怪的是,它确实在IE和Mozilla中工作,但在Chrome中不起作用.
我在SO上发现了很多帖子,但没有一个有用
有什么想法/建议吗?
当使用jQuery UI Datepicker时,我们在Google Chrome中使用时会遇到问题:当我们输入日期高于12的日期时,它不接受它作为有效日期,这是因为chrome认为dateformat是mm/dd/YYYY.我们尝试通过添加代码来尝试将日期设置强制为dd/mm/yyyy来解决此问题
$('.date').datepicker({ dateFormat: "dd/mm/yy" });
Run Code Online (Sandbox Code Playgroud)
有没有办法解决这个问题,所以我们的datepicker将接受dd/mm/yyyy值?我们在Google Chrome中只有这个问题,datefix适用于firefox,即&safari.我们在这个项目中使用ASPX和MVC3.
如果有人能解决我们的问题,那就太好了
谢谢
之前已经问过这个问题,但答案并没有解决我的问题.问题是我总是在datetime字段中收到以下错误.
字段创建时间必须是日期.
我的尝试
这是我设置日期格式的模态
[Display(Name = "Created Time")]
[DataType(DataType.Date), DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> CreatedTime { get; set; }
Run Code Online (Sandbox Code Playgroud)
查看代码
<div class="form-group">
@Html.LabelFor(model => model.CreatedTime, "Timesheet Date")
<div class='input-group date' id='Datetimepicker1'>
@Html.TextBoxFor(model => model.CreatedTime, new { @class = "form-control" })
<span class="input-group-addon"> <span class="glyphicon glyphicon-calendar"></span> </span>
</div>
@Html.ValidationMessageFor(model => model.CreatedTime, "", new { @class = "text-danger" })
</div>
Run Code Online (Sandbox Code Playgroud)
在js
$('#CreatedTime').removeAttr("data-val-date");
$('#Datetimepicker1').datetimepicker({ format: 'DD/MM/YYYY' });
Run Code Online (Sandbox Code Playgroud)
也尝试改变jquery.validate.js功能date: function (value, element)如下,但无法解决问题.
if ($.browser.webkit) { …Run Code Online (Sandbox Code Playgroud) 我的观点是从数据库中显示日期
<div class="input-group">
@Html.TextBoxFor(model => model.domain_renew_date, "{0:dd/MMM/yyyy}", new { @type = "datetime", @class = "form-control" })
@Html.ValidationMessageFor(model => model.domain_renew_date, "", new { @class = "text-danger" })
</div>
Run Code Online (Sandbox Code Playgroud)
我的javascript for datepicker
<script type="text/javascript">
$(document).ready(function () {
$('input[type="datetime"]').datepicker({
dateFormat: "dd/MM/yy",
changeMonth: true,
changeYear: true,
yearRange: "c-10:c+10"
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
声明属性的模型
[Display(Name = "Date of Renewal")]
[DataType(DataType.Date)]
[RequiredIf("domain_flag", "1", ErrorMessage = "Enter Renew Date")]
public DateTime? domain_renew_date { get; set; }
Run Code Online (Sandbox Code Playgroud)
在web.config中
<system.web>
<globalization uiCulture="en" culture="en-GB" />
</system.web>
Run Code Online (Sandbox Code Playgroud)
这在chrome和Firefox中运行得非常好.但在IE和Safari中给出以下错误
字段续订日期必须是日期
可以在代码中进行哪些更改,以使其在所有浏览器中都能正常运行?
jquery ×4
asp.net-mvc ×3
date ×2
css3 ×1
editorfor ×1
html5 ×1
input ×1
javascript ×1
jquery-ui ×1