我正在使用JS函數來聲明該日期的下一個可用第一天的var日期。即今天將是11/01/2017(mm/dd/yyyy)。該功能是完美的工作,但IE 11 +不會採取它,而是拋出一些額外的功能,該表格然後會拒絕,因爲不是一個有效的日期,但在Chrome中,它的工作完美。針對IE和Chrome的ToLocaleDateString()解決方法
伊夫改變了代碼以下,這兩個瀏覽器的工作原理..
//Calculate and assign next available 1st day of the month
var date = new Date();
firstDay = new Date(date.getFullYear(), date.getMonth()+1, 1);
firstDay = (new Date(firstDay).toLocaleString('en-US').replace(/[^ -~]/g,''));
但是輸出爲:11/1/2017,%2012:00:00%20AM..
。這是功能上正確的,因爲我的表單拾取"11/1/2017
「的一部分,並忽略了其餘部分,在IE瀏覽器& Chrome上,但是我怎麼能改變上面的代碼,所以它只會刪除」,%2012:00:00%20AM
「?它只是爲了整理這是沿用戶數據傳遞的URL
我不明白你只是想顯示11/1/2017?如果它假設被用作字符串,那麼由於某種原因,您的變量firstDay必須是Date?你可以寫firstDay = date.getDate()+'/'+(date.getMonth()+ 1)'/'+ date.getFullYear()。或者你想要別的東西? –
或甚至可能是 firstDay =(new Date(firstDay).toLocaleString('en-US'))。Substring(0,10); –