[英]Why is X-editable datepicker value format different?
我正在使用X-editable擴展來驗證日期輸入:
$('.editable-date').editable({
type: 'date',
pk:1,
params: function(params){
params.dataId = dataId;
return params;
},
validate : function(value){
return "value is "+value; //validation
},
url: '<?php echo Yii::app()->createAbsoluteUrl("/rga/controller/update"); ?>',
success: function(response){
}
});
並在提交的控制器中:
public function actionUpdate(){
if(isset($_POST['value'])){
$dataId = $_POST['dataId'];
$value = $_POST['value'];
ChromePhp::log($value); //output value to console
//some code here
}
}
Chrome日志以yyyy / mm / dd格式顯示日期(例如2014-24-02),但在JavaScript中的驗證代碼中顯示; 當我嘗試輸出日期。 它的格式不同,返回字符串輸出某種形式:
價值是Sun Jun 29 2014 08:00:00 GMT + 0800(馬來半島標准時間)
我需要做一些驗證代碼,但我需要以yyyy / mm / dd格式進行。 為什么驗證和提交日期格式不同? 如果我如何將日期字符串轉換為我需要的格式? 這有一個php / javascript函數嗎? 非常感謝!
返回的value
是JavaScript Date
實例 。 您應該能夠使用Date方法以其他格式訪問日期,例如:
validate : function(value){
var month = ("0" + (value.getMonth()+1).toString()).slice(-2); // The getMonth() method returns the month (from 0 to 11) for the specified date
var day = ("0" + value.getDate().toString()).slice(-2);
var year = value.getFullYear().toString();
var date = month + "/" + day + "/" + year;
},
請注意slice
s為單位數天和月添加零填充。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.