Bootstrap日期选择器未在gridview的编辑模式中突出显示日历中的日期

时间:2015-11-16 20:40:24

标签: jquery twitter-bootstrap entity-framework datepicker asp.net-mvc-5

我使用实体框架在asp.net mvc5中使用了MVCGrid和Edit和delete按钮。当我单击“编辑”按钮时,将打开引导模式弹出窗口以显示数据。日期属性显示正确,但我希望引导日历突出显示所选日期。目前它突出了今天的日期。 enter image description here

从数据库获取的日期是11/10/2015(mm / dd / yyy),日历上突出显示的是今天的日期(16日nov)。有没有办法解决这个问题。

我在部分视图_Edit中使用的脚本文件是: -

<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.js">
</script>
<link href="~/Content/bootstrap-datepicker3.css" rel="stylesheet" />

<script src="~/Scripts/bootstrap-datepicker.js"></script>

<script>
    $(function (data) {

        $('.datepicker').datepicker(
            {
                format: "yyyy-mm-dd",
                autoclose: true
            }
            );


    });
</script>

这是使用日期选择器的代码: -

<div class="form-group">
                        @Html.LabelFor(model => model.Date, htmlAttributes: new { @class = "control-label col-md-3" })


<div class="col-md-9">
                        @Html.TextBoxFor(model => model.Date, new { @class = "datepicker" })
                        @Html.ValidationMessageFor(model => model.Date, "", new { @class = "text-danger" })
                    </div>
                    </div>

2 个答案:

答案 0 :(得分:1)

正确的答案是,在编辑模式下,我的日期与默认时间一起打印。但如果它只是日期,那么它会完美地突出显示日历中的日期。在dateFormat中选择datepicker中的格式而不是&#34;格式&#34;我以前用过的标签。同样在渲染中TextBox使用@Value = Model.Date.Value.ToString(&#34; MM / dd / yyyy&#34;)(小mm是分钟,所以在这里使用MM)。 (对我来说,尝试使用shortdatetimeString时会抛出错误,所以我按上面的方式使用。)

我的更改如下: -

<script>
    $(function (data) {

        $('.datepicker').datepicker(
            {
                dateFormat: 'mm/dd/yyyy',
                pickDate:true,
                autoclose: false
            }
            );

    });
</script>

 <div class="form-group">
                        @Html.LabelFor(model => model.Date, htmlAttributes: new { @class = "control-label col-md-3" })
                        <div class="col-md-9">
                          @Html.TextBoxFor(model => model.Date, new { @Value = Model.Date.Value.ToString("MM/dd/yyyy"), @class = "datepicker" })
                        @Html.ValidationMessageFor(model => model.Date, "", new { @class = "text-danger" })
                        </div>
                    </div>

答案 1 :(得分:0)

我有同样的问题,这让我很头疼,我绝对解决了:

$('input[type=date]').prop('type', 'text').datepicker({
    autoclose: true,
    forceParse: false,
    language: "it-IT"
});

您需要以相同的格式输出日期,并且可以在您的网站中进行输入。在<globalization culture="it-IT" uiCulture="it-IT" />内添加<system.web>

查看页面输入页面的来源,如何在输入标签内打印日期。

相关问题