我有一个函数可以在尝试计算时间时创建时间值,但是当我尝试更改下拉时间时,我的值不会改变,因为它们仅停留在7。该函数仅加载默认值值(时间)是7,因为它是上午7点。
从屏幕截图中的屏幕截图中可以看到,加载表单时的时间是早上7点,值为7,但是当我将时间更改为8:00时,它没有显示正确的值8并停留在值7
这是我的代码:
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
var timeStringToValue = function timeStringToValue(timeStr) {
var _timeStr$match = timeStr.match(/(\d+):(\d+) ([ap]m)/),
_timeStr$match2 = _slicedToArray(_timeStr$match, 4),
hours = _timeStr$match2[1],
minutes = _timeStr$match2[2],
ampm = _timeStr$match2[3];
var ampmHourModifier = ampm === 'pm' ? 12 : 0;
return Number(hours) + ampmHourModifier + minutes / 60;
};
var startMonTimeStr = $('.start-time-monday option:selected').text();
var FinishtMonTimeStr = $('.finish-time-monday option:selected').text();
var startMonValue = timeStringToValue(startMonTimeStr);
console.log(timeStringToValue(startMonTimeStr));
console.log(timeStringToValue(FinishtMonTimeStr));