2014-04-20 14 views
2

大家好我想要手動分配一個值到一個html日期輸入字段。但它不起作用。不能賦值給php日期框

首先,我試圖通過價值我做普通輸入框

<?php $newDate2 = '03/31/2014'; ?> 
<form name='RegForm' method='GET'> 
<input type="date" name="sdate" id="sdate" value="<?php echo $newDate2; ?>" required> 
</form> 

的方式,當它沒有工作我試圖使用JavaScript寬度是這樣的:

<head> 
<script type="text/javascript"> 
    function showInvoiceDate(){ 
    var mYDate = new Date('2011-04-11'); 
    alert(mYDate); 
    document.getElementById("sdate").value=mYDate; 
} 
</script> 
</head> 
<body onload="showInvoiceDate();"> 
    <form name='RegForm' method='GET'> 
    <input type="date" name="sdate" id="sdate" required> 
    </form> 
</body> 

正在提示該功能。因爲警報框顯示的值爲myDate但是日期框的值並未改變其仍然mm/dd/yyy

所以我在做什麼錯了?

+0

定義「不起作用」。 –

+0

我想知道是否有可能手動分配日期框的值? – meks

+0

定義?你什麼意思? – meks

回答

3

日期格式應爲YYYY-MM-DD。單一的數字日期和月份應以0一月來填充爲01

documentation

表示日期的字符串。 值:如在[RFC 3339]所定義,與額外資格該年分量是代表一個數大於0

四個或更多個數字

PHP有效全日期 - 碼應該是:

<?php $newDate2 = "2014-03-31"; ?> 
<form name='RegForm' method='GET'> 
<input type="date" name="sdate" id="sdate" value="<?= $newDate2; ?>" required> 
</form> 

經過測試,它適用於我。

的Javascript - 你需要構造日期字符串,然後將其設置,如:

var dateString = mYDate.getUTCFullYear() + "-" + (mYDate.getUTCMonth()+1) + "-" + mYDate.getUTCDate(); 
document.getElementById("sdate").value = dateString ; 

我沒有測試JS版本,但它應該工作。