Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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中添加30分钟的日期时间?_Javascript_Jquery - Fatal编程技术网

Javascript 如何在Jquery中添加30分钟的日期时间?

Javascript 如何在Jquery中添加30分钟的日期时间?,javascript,jquery,Javascript,Jquery,我有mm dd YYYY H:i日期格式,我想在所选日期时间中添加30分钟 function SetEndDate(start_date){ // start_date = "05-25-2017 05:00" var duration = '30'; var end_date_tmp = new Date(start_date); end_date_tmp.setMinutes(duration); $('#end_da

我有mm dd YYYY H:i日期格式,我想在所选日期时间中添加30分钟

function SetEndDate(start_date){ // start_date = "05-25-2017 05:00"
        var duration     = '30';
        var end_date_tmp = new Date(start_date);

        end_date_tmp.setMinutes(duration);
        $('#end_date').val(end_date_tmp);
}
它给出了无效的日期错误。

请尝试以下操作:

像这样:

function SetEndDate(start_date)
{ // start_date = "05-25-2017 05:00"
        var end_date_tmp = new Date(start_date);
         end_date_tmp.setTime(start_date.getTime() + (30 * 60 * 1000));
}

因为您的库使用的是自定义格式05-25-2017 05:00,所以我建议您尝试使用。它可以跨浏览器正确处理解析/格式设置

函数GetEndDatestart_date{//start_date=05-25-2017 05:00 风险值持续时间=30; var d=fecha.parsestart_日期'MM-DD-YYYY HH:MM'; d、 setMinutesd.getMinutes+持续时间; 返回fecha.formatd,'MM-DD-YYYY HH:MM';; } 控制台。logGetEndDate'05-25-2017 05:00'; //这样说吧: //$'end_date'.valGetEndDate/*此处为您的变量*/;
可能重复,但如何添加动态日期?我的日期格式不一样。先传递一个有效的日期字符串给函数,或者解析该字符串传递给日期对象。我不是说fetcha不好,但在回答这些类型的问题时尽量避免使用其他库,因为这不是必需的@ArthurGuiot怎么不必要?从技术上讲,stackoverflow上的每个问题都不需要库。如果没有库的参与,这个答案会变得复杂得多,因此我觉得它是一个有效的答案。解析字符串以传递给date对象并不难……或者建议OP更改它的源代码,这就是为什么您建议使用库,而我将提醒End_date_tmp;此时我将给出错误无效日期。您可以将这些数字转换为日期时间警报New Dateend\u Date\u tmp.TogmString;一般来说,只有代码的答案是不受欢迎的,对于未注释的代码更是如此:你能总结和评论编码的想法吗?
function SetEndDate(start_date)
{ // start_date = "05-25-2017 05:00"
        var end_date_tmp = new Date(start_date);
         end_date_tmp.setTime(start_date.getTime() + (30 * 60 * 1000));
}
function SetEndDate(start_date){ // start_date = "05-25-2017 05:00" (mm-dd-yyyy) format
var duration        = '30';

var my_date_format  = function(start_date){
    var d           = new Date(Date.parse(start_date.replace(/-/g, "/")));
    var month       = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
    var date        = d.getFullYear() + "-" + month[d.getMonth()] + "-" + d.getDate();
    var time        = d.getHours()+":"+d.getMinutes();
    var date_time   = date + " " + time;
    return (date_time);  
};

var date_time   = my_date_format(start_date);
    d2              = new Date ( date_time );
    d2.setTime(d2.getTime() + (duration * 60 * 1000));

var date_new    = new Date(d2);
    yr              = date_new.getFullYear();
    month           = date_new.getMonth() < 10 ? '0' + (date_new.getMonth() + 1)  : (date_new.getMonth() + 1);
    day             = date_new.getDate()  < 10 ? '0' + date_new.getDate()  : date_new.getDate();
    minutes         = date_new.getMinutes()  < 10 ? '0' + date_new.getMinutes()  : date_new.getMinutes();
    hours           = date_new.getHours()  < 10 ? '0' + date_new.getHours()  : date_new.getHours();
    time            = hours + ":" + minutes;
    newDate         = month + '-' + day + '-' + yr + ' ' + time;
$('#end_date').val(newDate); // you can get new date in "newDate" variable
}