2013-03-15 11 views
2

我使用強類型的DateTime?我的ViewModel中的屬性在我的項目上,並且使用了有關不顯眼驗證的自定義驗證屬性。自定義屬性之前,它都工作得很好,但現在我得到「完成日期字段必須是日期」,同時從Safari瀏覽我的應用程序。這是safari唯一的問題我已經在ie,chrome和ff中測試過我的應用程序,並且沒有發現任何問題。特別是在遵循datetime的格式參數之後。面對「野外必須是日期」與safari和IE的問題

@Html.TextBoxFor(m => m.ProjectCompletionDate, "{0:d}", 
    new { @class = "input-large", size = "16",id="inputDatepicker2" }) 

我的看法是強類型的..我不知道接下來是什麼... plz幫助

OKI這不僅是Safari瀏覽器,IE瀏覽器在做同樣的... FF和鉻工作很好。我實際上使用引導日期選擇器擴展。這看起來像......

<div class="date" id="datepicker1" data-date-format="M/d/yyyy">     
      Html.TextBoxFor(m => m.ProjectCommencementDate,"{0:d}", new { @class = "input-large", size = "16",id="inputDatepicker1" }) 
      <span class="add-on"><i class="icon-th"></i></span>         
      Html.ValidationMessageFor(m => m.ProjectCommencementDate) 
     </div> 

    $('#datepicker1').datepicker({ 
     autoclose:true 
    }).on('changeDate', function (ev) {      
     //$('#inputDatepicker2').focus();   
    }); 

我碰到這個問題的鏈接

http://connect.microsoft.com/VisualStudio/feedback/details/705643/a-data-val-date-attribute-is-generated-for-time-fields-in-asp-net-mvc-4

這是更加驚人..來到仍然希望能得到一些出路。

+0

可以顯示試圖驗證日期的JavaScript部分嗎? – insertusernamehere 2013-03-15 08:25:14

+0

@insertusernamehere我更新了我的問題... – afr0 2013-03-15 08:35:40

+0

也許瀏覽器對大寫'M'有問題?手冊中說:「*日期格式,d,dd,m,mm,yy,yyy。*的組合。」這只是從[選項](http://www.eyecon.ro/bootstrap-datepicker/) – insertusernamehere 2013-03-15 08:46:18

回答

0

您正在處理哪個HTML標準? 嘗試清楚地將HTML5設置爲文檔頭並設置字段的輸入類型爲止。

+0

這裏是蘋果開發者參考: https://developer.apple.com/library/safari/#documentation/AppleApplications /Reference/SafariHTMLRef/Articles/InputTypes.html – redflag237 2013-03-15 08:07:45

+0

是否有可能避免HTML5配置,因爲我不知道它對我的整體應用程序的影響。 – afr0 2013-03-15 08:16:42

+0

您通常應該設置一個用於渲染引擎的清晰標準。可以湊請告訴我你的頭,那我如果您正在使用非HTML5標記,你可以使用jQuery UI的日期選擇器 – redflag237 2013-03-15 08:19:06