循环渲染的时间输入框,时间范围限制?

新手上路,请多包涵

\#\#\# 循环渲染出的时间框,开始时间和结束时间用的是同一个输入框,怎么判断时间范围

\#\#\# 相关代码
image.png
image.png
image.png

\#\#\# 后台接口返回的数据

image.png

\#\#\# 我期待的结果

image.png

image.png

\#\#\# 现在的结果

image.png

阅读 1.4k
2 个回答

可以试下ref绑定field 然后 用this.refs.[field]取值

这个是否都是按照开始-结束顺序排列,如果是,那就容易根据index分组获取开始和结束的值,然后做以下的扩展我写的是,开始<=结束,开始<=结束<=当日,可根据实际情况修改(望采纳)

// date-picker部分(下为开始日期,结束日期输入1)
              :picker-options="
                {
                  disabledDate: (time) =>
                    disabledDate(time, beginTime, endTime, 0),
                }
              "
              
// 函数部分,
    /**
     * 获取disabledDate
     * @param {date} time 时间参数
     * @param {string} beginTime 开始日期的值
     * @param {string} endTime 结束日期的值
     * @param {int} type 0为开始,1为结束
     */
    disabledDate(time, beginTime, endTime, type) {
      // 结束日期
      if (type) {
        return (
          time.getTime() < new Date(beginTime).getTime() - 28800000 ||
          time.getTime() > new Date().getTime()
        );
      } else {
        if (endTime) {
          return time.getTime() > new Date(endTime).getTime();
        }
        return time.getTime() > new Date().getTime();
      }
    }
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题