PDA

View Full Version : سوال: اشکال در نمایش DateTimePicker



gama_slv
چهارشنبه 29 خرداد 1392, 15:36 عصر
در view ها به هیچ عنوانی نمی تونم DateTimePicker رو نمایش بدم.در مدل DataType از جنس DateTime


[Display(Name = "تاریخ تولد")]
[DisplayFormat(DataFormatString = "{0:yyyy/MM/dd}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime > Birthday { get; set; }

در _Layout این اسکریپت هارو گذاشتم


<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/1-ui.core.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/2-ui.theme.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/3-ui.datepicker.css")" rel="stylesheet" type="text/css" />


<script src="@Url.Content("~/Scripts/jquery.validate.min.js")"></script>

<script src="@Url.Content("~/Scripts/jquery-ui-1.9.2.min.js")"></script>
<script src="@Url.Content("~/Scripts/jquery.ui.datepicker-cc.js")"></script>
<script src="@Url.Content("~/Scripts/calendar.js")"></script>
<script src="@Url.Content("~/Scripts/jquery.ui.datepicker-cc-fa.js")"></script>


<style type="text/css">

</style>
<link href="@Url.Content("~/Content/kendo/2013.1.319/kendo.common.min.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/kendo/2013.1.319/kendo.dataviz.min.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/kendo/2013.1.319/kendo.uniform.min.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/kendo/2013.1.319/kendo.dataviz.uniform.min.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/kendo/2013.1.319/kendo.rtl.min.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/kendo/2013.1.319/jquery.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo/2013.1.319/kendo.all.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo/2013.1.319/kendo.aspnetmvc.min.js")"></script>

و


<script type="text/javascript">
$(document).ready(function () {
$("[id*=Date]").each(function () {
$(this).datepicker({
dateFormat: 'yy/mm/dd',
showOn: 'button',
buttonImage: '/Content/calendar.gif',
buttonImageOnly: true,
showButtonPanel: true
});

در view هم


<div class="editor-label">
@Html.LabelFor(model => model.Birthday)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Birthday)
@Html.ValidationMessageFor(model => model.Birthday)
</div>


تمام فیلدهایی که تاریخ هست این مشکل رو دارم .به جای DateTimePicker یک Textbox نمایش داده میشه
من با Nuget تمام پکیج ها که استفاده میکردم رو آپدیت کردم از جمله jquey

مهدی کرامتی
چهارشنبه 29 خرداد 1392, 19:32 عصر
اگر دقت کنید در اسکریپت jQuery سلکتور طوری نوشته شده که فیلدهایی که در اسمشون کلمه Date هست رو تبدیل به DatePicker می کنه، اما اسم فیلد مورد نظر تاریخ شما BirthDay است.

اگر اصرار دارید که مثلا بجای BirthDate از BirthDay استفاده کنید سلکتور رو به این شکل بنویسید:

<script type="text/javascript">
$(document).ready(function () {
$("#BirthDay").datepicker({
dateFormat: 'yy/mm/dd',
showOn: 'button',
buttonImage: '/Content/calendar.gif',
buttonImageOnly: true,
showButtonPanel: true
});
});
</script>
البته این کد باید بجای Layout در View مرتبط قرار داده شود.