$("#time-start, #time-end").change(function(){ var timestart = new Date($("#time-start").val()); var timeend = new Date($("#time-end").val()); var hours = Number(((timeend - timestart) / (1000 * 60 * 60)).toFixed(2)) ; $("#leave-hours").val(hours);leave-hours返回值为NaN
时间: 2024-03-29 22:35:54 浏览: 67
js实现符合国情的日期插件详解.docx
如果在执行这段代码时,`$("#leave-hours").val(hours)` 返回值为`NaN`,有可能是以下几个原因:
1. `$("#leave-hours")` 选择器选中的元素不存在;
2. `hours` 变量的值为 `NaN`,可能是因为日期格式不正确或者 `$("#time-start").val()` 和 `$("#time-end").val() `返回的值无法转换为日期对象;
3. 在 `$("#leave-hours")` 中设置的值不是数字类型。
首先,你需要检查 `$("#leave-hours")` 是不是正确的选择器,其次,你需要检查 `$("#time-start").val()` 和 `$("#time-end").val()` 返回的值是否符合日期格式,或者是否为空字符串。最后,你需要检查 `$("#leave-hours").val(hours)` 中的 `hours` 是否是一个数字类型。如果以上都没有问题,你可以在控制台输出调试信息,进一步排查问题。
阅读全文