Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery,将日期添加到日期_Javascript_Jquery - Fatal编程技术网

Javascript jQuery,将日期添加到日期

Javascript jQuery,将日期添加到日期,javascript,jquery,Javascript,Jquery,在我的RubyonRails应用程序中,我有一个字段,用户可以在其中设置日期。此字段值的格式如下: $('#search_form_handover_date').val() #returns "15-07-2014 09:00" 现在,我如何在这个日期上加上3天,以便: “18-07-2014 09:00”尝试以下方法,如果您的日期字符串始终保持相同的格式 var date = "15-07-2014 09:00"; var dateParts = (date.split(" ")[0]).

在我的RubyonRails应用程序中,我有一个字段,用户可以在其中设置日期。此字段值的格式如下:

$('#search_form_handover_date').val()
#returns
"15-07-2014 09:00"
现在,我如何在这个日期上加上3天,以便:
“18-07-2014 09:00”

尝试以下方法,如果您的日期字符串始终保持相同的格式

var date = "15-07-2014 09:00";
var dateParts = (date.split(" ")[0]).split("-");
var timeParts = (date.split(" ")[1]).split(":");
var dateObj = new Date(dateParts[2],dateParts[1]-1,dateParts[0],timeParts[0],timeParts[1]);
dateObj.setDate(dateObj.getDate()+3);
console.log(dateObj)

//If you don't use any library like Jquery datepicker, you have to use basic js operation to format the date (but not recommend)   

console.log(formateDate(dateObj))

function formateDate(DateObj)
{
return addLeadingZeros(dateObj.getDate())+"-"+addLeadingZeros(dateObj.getMonth()+1)+"-"+dateObj.getFullYear()+" "+addLeadingZeros(dateObj.getHours())+":"+addLeadingZeros(dateObj.getMinutes());

}

function addLeadingZeros(intArg)
{
    return ('0' + intArg).slice(-2)
}
我是一个超级粉丝,如果你不介意使用第三方JS库,你可以

// As the format you gave is non standard, you need to tell moment what it's getting
var myTime = moment("15-07-2014 09:00", "DD-MM-YYYY HH:mm");

console.log(myTime.format('DD-MM-YYYY HH:mm'));

var newTime = moment(myTime).add('3', 'days');

console.log(newTime.format('DD-MM-YYYY HH:mm'));

看起来是无效的日期格式,您使用的是日期选择器吗?为什么日期是这种格式?我使用的是:我在javascipt文件中的格式是:format:'d-m-Y H:I'这是一个非常好的解决方案。但我最不想让这个dateObj成为这种格式的字符串:“15-07-2014 09:00”。你知道怎么做吗?我编辑了答案,但我建议你使用一些库来格式化你的日期。谢谢你的帮助,但我不想使用外部库。我非常接近解决方案。我只需要将:Date{Fri Jul 18 2014 00:00:00 GMT+0200(CEST)}转换为:“18-07-2014 09:00”,我决定使用矩。js,因为它是一个很棒的图书馆。谢谢你的帮助。