2012-03-08 59 views
0

我下面這個tutorial來顯示日期選擇器,當我點擊進入一個文本框......但日期選取器不顯示...爲什麼datepicker不顯示在我的MVC 3網站?

模型類(預約):

[Required(ErrorMessage = "Date requise.")] 
    [Display(Name = "Date")] 
    [Column("Date")] 
    [DataType(DataType.DateTime)] 
    public DateTime Date { get; set; } 

EditorHookup.js

/// <reference path="~/Scripts/jquery-1.5.1.js" /> 
/// <reference path="~/Scripts/jquery-ui-1.8.11.js" /> 
$(document).ready(function() { 
$('.date').datepicker({ dateFormat: "dd/mm/yy" }); 
}); 

局部視圖(Date.cshtml)

@inherits System.Web.Mvc.WebViewPage<System.DateTime?> 
@model DateTime 
@Html.TextBox("", Model.ToString("dd/MM/yyyy"), 
       new{@class="date"}) 
** TODO Wire up the date picker! ** 

我的觀點

@model TennisOnline.Models.Reservation 

@{ 
ViewBag.Title = "Create"; 
Layout = "~/Views/Shared/_Layout.cshtml"; 
} 

<h2>Create</h2> 

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"> </script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.11.js")" type="text/javascript"></script> 
<link href="@Url.Content("~/Content/themes/base/jquery.ui.all.css")" rel="stylesheet" type="text/css" /> 
<script src="@Url.Content("~/Scripts/EditorHookup.js")" type="text/javascript"></script> 

@using (Html.BeginForm()) { 
@Html.ValidationSummary(true) 
<fieldset> 
    <legend>Reservation</legend> 

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

那麼,你知道爲什麼日期選取器不顯示嗎?在此先感謝

回答

3

您的部分視圖模型未被調用,因爲您的屬性的DataType是錯誤的。更換

[DataType(DataType.DateTime)] 

[DataType(DataType.Date)] 

,並如預期正常工作了。

編輯

你也應該從局部視圖中刪除@inherits行繼承不與模型不允許的。

+0

之後,我發現了一個HttpParseException:當使用'model'關鍵字時,不允許使用'inherits'關鍵字 – Razor 2012-03-08 12:31:45

+1

至少現在你知道你的部分視圖你正在取得進展!你應該擺脫@inherits行。我正在更新我的答案。 – Falanwe 2012-03-08 12:35:58

+0

謝謝我刪除@inherit行......但我現在有一個新的異常對不起:== > InvalidOperationException:傳入字典的模型項目爲空,但是這個字典需要一個類型爲'System.DateTime'的非空模型項目。 – Razor 2012-03-08 12:41:37

0

我認爲您的部分視圖可能需要命名爲DateTime.cshtml以匹配您的模型屬性的類型。

2

我認爲您的視圖缺少對「〜/〜Scripts/jquery-1.5.1.js」腳本的引用。

+0

謝謝,我添加了引用,但是我的問題依然存在:( – Razor 2012-03-08 12:35:55

相關問題