2017-08-24 76 views
0

指定的值"18/08/2017"不符合要求的格式,控制器方法。我想將日期加載到日期類型字段中。谷歌瀏覽器給我一個警告。如何解決此問題谷歌瀏覽器是顯示<code>yyyy-MM-dd</code></p> <p>谷歌瀏覽器中不<code>dd/MM/yyyy</code>格式從加載日期的日期格式YYYY-MM-DD代替DD/MM/YYYY

指定的值"18/08/2017"不符合所需的格式,yyyy-MM-dd

,這裏是我的觀點

@Html.EditorFor(model => model.DateReceived, "{0:dd/MM/yyyy}", 
    new {htmlAttributes = new { @class = "form-control", @type="date" } }) 
+0

我早就離開輸入型作爲文本並使用一些jquery插件選擇日期,因爲日期輸入類型僅在chrome中顯示datepicker,並且在其他瀏覽器中不起作用。 –

回答

1

Chrome會詢問 「YYYY-MM-DD」 代碼 - > 2017年8月18日
你給了鍍鉻 「DD-MM-YYYY」 - > 18/08/2017
您需要爲Chrome提供所需的格式。

更改爲:

@Html.EditorFor(model => model.DateReceived, "{0:yyyy/MM/dd}", new {htmlAttributes = new { @class = "form-control", @type="date" } }) 
+0

仍然無法正常工作。我將它改爲@ Html.EditorFor(model => model.DateReceived,「{0:yyyy/MM/dd}」,new {htmlAttributes = new {@class =「form-control」}})和DisplayFormat也相同語氣 – Danushkaw

0

請填寫下面的JavaScript在頁面

<script type="text/jscript"> 
    $(function() { 
     $.validator.methods.date = function (value, element) { 
      if ($.browser.webkit) { 

       //ES - Chrome does not use the locale when new Date objects instantiated: 
       var d = new Date(); 

       return this.optional(element) || !/Invalid|NaN/.test(new Date(d.toLocaleDateString(value))); 
      } 
      else { 

       return this.optional(element) || !/Invalid|NaN/.test(new Date(value)); 
      } 
     }; 
    }); 

,並考慮寫這

@Html.EditorFor(model => model.DateReceived, "{0:dd/MM/yyyy}", 
new { @class = "form-control" })