Javascript Bootstrap(Twitter)日期选择器差异计算返回;“南”;
以下代码在更改日期返回“NaN”(不是数字)值。我认为Flow是正确的,但我不知道它如何返回NaNJavascript Bootstrap(Twitter)日期选择器差异计算返回;“南”;,javascript,jquery,twitter-bootstrap,datepicker,Javascript,Jquery,Twitter Bootstrap,Datepicker,以下代码在更改日期返回“NaN”(不是数字)值。我认为Flow是正确的,但我不知道它如何返回NaN $(function() { $('.datepicker').datepicker({format: "yyyy-mm-dd"}); var calculateDuration = function() { var start_date = $('#start_date').datepicker('getDate'); var end_date = $('#en
$(function() {
$('.datepicker').datepicker({format: "yyyy-mm-dd"});
var calculateDuration = function() {
var start_date = $('#start_date').datepicker('getDate');
var end_date = $('#end_date').datepicker('getDate');
document.getElementById('reservation_duration').value = (Number(end_date) - Number(start_date)) / 86400000;
}
$('#end_date').change(calculateDuration);
$('#start_date').change(calculateDuration);
});
这是日期选择器:。日期选择器('getDate')
不是有效的方法。您可能只需要字段的值,例如,$(“#开始日期”).val()
更新
您仍然需要将字段值转换为适合算术运算的格式:
var startDate = new Date($('#start_date').val());
var endDate = new Date($('#end_date').val());
var delta = endDate - startDate;
.datepicker('getDate')
不是有效的方法。您可能只需要字段的值,例如,$(“#开始日期”).val()
更新
您仍然需要将字段值转换为适合算术运算的格式:
var startDate = new Date($('#start_date').val());
var endDate = new Date($('#end_date').val());
var delta = endDate - startDate;
遵循安德烈·迪翁的建议,并使其发挥作用强>
$(function() {
$('.datepicker').datepicker({format: "yyyy-mm-dd"});
var calculateDuration = function() {
var startDate = new Date($('#start_date').val());
var endDate = new Date($('#end_date').val());
var diff = endDate - startDate;
document.getElementById('reservation_duration').value = (Number(diff) / 86400000) +1;
}
$('#end_date').change(calculateDuration);
$('#start_date').change(calculateDuration);
});
遵循安德烈·迪翁的建议,并使其发挥作用强>
$(function() {
$('.datepicker').datepicker({format: "yyyy-mm-dd"});
var calculateDuration = function() {
var startDate = new Date($('#start_date').val());
var endDate = new Date($('#end_date').val());
var diff = endDate - startDate;
document.getElementById('reservation_duration').value = (Number(diff) / 86400000) +1;
}
$('#end_date').change(calculateDuration);
$('#start_date').change(calculateDuration);
});
哈哈,对不起mistake@PiLHA哈哈,别担心!:)哈哈,对不起mistake@PiLHA哈哈,别担心!:)您需要将字符串转换为合适的值。只需按您尝试的方式铸造一个日期戳,例如
07/05/2013
,就会返回NaN
:console.log(Number('07/05/2013'))
您在钱的问题上绝对正确。我在这个线程中添加了工作代码作为答案。太谢谢你了您需要将字符串转换为合适的值。只需按您尝试的方式铸造一个日期戳,例如07/05/2013
,就会返回NaN
:console.log(Number('07/05/2013'))
您在钱的问题上绝对正确。我在这个线程中添加了工作代码作为答案。太谢谢你了