小程序表单中日期选择器可以限制日期吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小程序表单中日期选择器可以限制日期吗?相关的知识,希望对你有一定的参考价值。

表单中日期选择器中怎么去限制选择的日期呢?比如:登录小程序是2020-02-01,用户填写表单时间只能选择2020-01-31和当天日期,前后2天,其他日期是选择不了的。还得是实时更新。这样的可以实现吗、求大神帮助?能不能直接告诉我代码的大神,自己已经尝试了动态赋予 start 和 end 新值可是不太行,获取当前 年月日,开始时间就是当前日期减去一天,结束时间就是当前日期加上一天。

不是start、end属性,而是min、max属性。如下:
<input type="date" id="time"/>

<script type="text/javascript">
//今天的时间
var day = new Date();
day.setTime(day.getTime());
var time = day.getFullYear()+"-" + ('0'+ (day.getMonth() + 1)).slice(-2) + "-" + ('0' + day.getDate()).slice(-2);

//昨天的时间
var day1 = new Date();
day1.setTime(day1.getTime() -24 * 60 * 60 * 1000);
var min = day1.getFullYear()+"-" + ('0'+ (day1.getMonth() + 1)).slice(-2) + "-" + ('0' + day1.getDate()).slice(-2);

//明天的时间
var day2 = new Date();
day2.setTime(day2.getTime() + 24 * 60 * 60 * 1000);
var max = day2.getFullYear()+"-" + ('0'+ (day2.getMonth() + 1)).slice(-2) + "-" + ('0' + day2.getDate()).slice(-2);

//默认时间为今天
document.getElementById('time').value = time;

//限制不能选择昨天之前的日期(加上属性min)
document.getElementById('time').setAttribute('min', min);

//限制不能选择明天之后的日期(加上属性max)
document.getElementById('time').setAttribute('max', max);
</script>追问

微信小程序的日期选择器用的是picker
是在哪里添加

参考技术A wxml:

<view class="page">
<!-- 时间段 -->
<view class="picker_group">
<picker mode="date" value="date" end="date2" bindchange="bindDateChange">
<view class="picker">
date
</view>
</picker>

<picker mode="date" value="date2" start="date" end="2050-01-01" bindchange="bindDateChange2">
<view class="picker">
date2
</view>
</picker>
</view>
</view>

wxss:

/* 日期选择 */
.picker_group
height: 85rpx;
line-height: 85rpx;
justify-content: center;
display: flex;
align-items: center;
font-size: 30rpx;
color: #888;
border-bottom: 1rpx solid #efefef;



.picker_group picker
/* background-color: yellow; */
color: #64bff1;
height: 55rpx;
line-height: 55rpx;
margin: 0 2%;
padding: 0 2%;
border: 1rpx solid #64bff1;
border-radius: 30rpx;
追问

value="date" end="date2
value="date2" start="date"
的值怎么取还是就date?
尝试了,没有实现

闹钟——时间选择器

【中文标题】闹钟——时间选择器【英文标题】:Alarm Clock -- Time Picker 【发布时间】:2012-05-11 09:43:04 【问题描述】:

我正在尝试编写一个收音机闹钟作为一些编程练习,我已经成功地让一个时钟在一两行中工作。然而,当谈到让用户选择闹钟时间时,我不知道如何收集信息。

日期时间选择器可以传递看起来的日期和时间,但我只能弄清楚如何选择我不想要的日期。

我可以在表单上放置任何其他对象,以便用户可以选择设置闹钟的时间吗?

【问题讨论】:

是的,我记得当我不关心日期时,我不得不制作一个自定义时间选择器。本质上,它只是几个小时和分钟的 NumericUpDown 控件。使用类似的东西,你应该能够存储你需要的时间信息(你可以分别将它们限制为 0 - 23 和 0 - 59) 自定义时间选择器,MSDN 上有很好的文档吗?到目前为止,我一直未能成功删除日期。 "自定义时间选择器" = 我自己制作的。只需谷歌“.net time pickers”,你就可以看到其他人做了什么 我现在看到了它的自定义属性,我会看看周围的格式。谢谢! 【参考方案1】:

如果您只想使用DateTimePicker 操作时间,则以下代码应根据this MSDN article 工作:

timePicker.Format = DateTimePickerFormat.Time;
timePicker.ShowUpDown = true;

【讨论】:

太棒了,正是我想要的。你在哪里找到的,我已经在 Google 上搜索了一段时间,但没有遇到它。再次感谢:)

以上是关于小程序表单中日期选择器可以限制日期吗?的主要内容,如果未能解决你的问题,请参考以下文章

如果您使用引导日期选择器,日期会消失

如何在日期选择器中设置日期限制

在Android中使用未来日期限制日期选择器

在引导日期选择器中将课程添加到多个/特定日期?

如何在django表单上为日期选择器字段分配唯一ID?

引导模式 + 日期选择器 + 表单值