在 Vue.js 中使用 v-validate 验证日期

Validate date using v-validate in Vue.js

我只想允许那些等于或大于出发日期时间字段的日期:

<tr v-for="(input,k) in inputs" :key="k">
  <datetime 
    name="departureDateTime"
    v-validate="'date_format:yyyy-MM-dd HH:mm:ss|required'"
    v-model="input.departureDateTime"
  >
  </datetime>

  <datetime 
    name="arrivalDateTime"        
    v-validate="`after:${input.departureDateTime}|date_format:yyyy-MM-dd HH:mm:ss|required`"
    v-model="input.arrivalDateTime"
  >
  </datetime>
<tr>

这只允许我在到达字段中的 departureDateTime 字段之后的日期,但我也希望它也应该允许相同的日期,即如果我在出发时间中填写 27-05-2021,那么它应该允许相同的日期在 arrivalDateTime 字段中,我也希望只允许在两个日期字段中填写未来日期。

非常感谢任何帮助。

after params 是:

after:target,inclusion

...其中 inclusion 标志(任何值)指定是否检查大于或等于 target.

的日期

所以只需在目标日期后添加 ,true:

<datetime 
  name="arrivalDateTime"                         
  v-validate="`after:${input.departureDateTime},true|date_format:yyyy-MM-dd HH:mm:ss|required`"
  v-model="input.arrivalDateTime"
>
</datetime>

demo