我有一个引导表格:
<form action="/users/dashboard" method="POST">
<div class="form-row">
<div class="col">
<div class="input-group">
<div class="input-group-prepend">
<label for="beginDate" class="input-group-text" id="beginDateLabel">From</label>
</div>
<input type="date" name="beginDate" id="beginDate" aria-describedby="beginDateLabel">
</div>
</div>
<div class="col">
<div class="input-group">
<div class="input-group-prepend">
<label for="endDate" class="input-group-text" id="endDateLabel">To</label>
</div>
<input type="date" name="endDate" id="endDate" aria-describedby="endDateLabel">
</div>
</div>
<div class="col">
<button class="btn btn-secondary" type="submit">Go</button>
</div>
</div>
</form>
在Node后端,我有一条if
语句正在寻找这两个输入:
let beginDate = new Date();
beginDate.setMonth(beginDate.getMonth() - 5);
if (req.body.beginDate) {
const dateArr = req.body.beginDate.split('-');
beginDate = new Date(parseInt(dateArr[0]),parseInt(dateArr[1]) - 1, 01);
};
let endDate = new Date();
if (req.body.endDate) {
const dateArr = req.body.endDate.split('-');
endDate = new Date(parseInt(dateArr[0]),parseInt(dateArr[1] - 1), 01);
};
第一个if
语句很好地捕获了req.body.beginDate
,但是第二个语句被完全跳过,即使第二个输入确实具有值。在调试器中查看它会显示我的期望,字符串'2020-03-08'
或所选的日期。
您知道为什么第二个if
语句会被忽略吗?