我真的需要你的帮助来完成这个
我正在编写自己的脚本,该脚本从输入中导入日期,如下所示:
<input type='text' class='hidden' value='$a' id='test'>
$a 是日期,使用模板(?)从数据库中获取:2014, 03, 09, 04, 07, 02
及其:年、月、日、时、分、秒
所以看起来像这样
<input type='text' class='hidden' value='2014, 03, 09, 04, 07, 02' id='test'>
我的javascript文件是这样的:
$(function() {
$('input#test').removeClass('hidden');
var a = $('input#test').val();
console.log(a);
var b = +new Date(a);
console.log(b);
第一个控制台日志返回输入内容 (2014, 03, 09, 04, 07, 02),但第二个控制台日志返回 NaN。我不知道为什么:c
当我像这样手动编写时:
var b = +new Date(2014, 03, 09, 04, 07, 02);
一切正常..我不知道如何解决它,我也尝试过使用这个:
- span 和 .html();
- span 和 .text();
有什么想法吗? :)
最佳答案
您的 a 被视为字符串,因此它作为日期的第一个参数。您需要澄清日期中的其他参数。为什么在 new Date()
中使用 + ?
您还必须注意一件事,月份是从 0 开始的,因此 03 表示四月而不是三月。
好像不需要。
试试这个:
$('input#test').removeClass('hidden');
var a = $('input#test').val();
console.log(a);
arr = a.split(",")
var b = new Date(arr[0],arr[1],arr[2],arr[3],arr[4],arr[5]);
console.log(b);
关于javascript - jQuery - 从输入值创建日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22194846/