微信小程序-日期时间选择器

2023-11-20

我在官方表单组件的基础上改出了几种比较常用的日期(时间)选择器,为了更清晰,我没给任何样式,wxss可根据个人喜好添加。
一、picker-view (嵌入页面的滚动选择器)

注意:其中只可放置组件,其他节点不会显示

picker-view-column
仅可放置于中,其孩子节点的高度会自动设置成与picker-view的选中框的高度一致

二、picker
从底部弹起的滚动选择器,现支持五种选择器,通过mode来区分,分别是普通选择器,多列选择器,时间选择器,日期选择器,省市区选择器,默认是普通选择器。
我这里用到的是多列选择器,时间选择器和日期选择器。
组件详情请进官网查看
https://developers.weixin.qq.com/miniprogram/dev/component/picker.html

三.基于picker-view 进行完善的日期时间选择器。

1.新建目录:新建目录有两种方式
(1)在pages上单击右键,选择新建目录,输入你想起的名称。建好目录后在新目录上单 击右键,新建wxml/js/wxss/json四个文件,文件名与目录名最好一致,便于查找。
(2)在app.json 中的pages里直接新建目录"pages/目录名/里面四个文件名"。推荐使用,比较方便快捷。
注意:这里所有的目录名和文件名只能用英文和数字命名,不能用汉字。

2.日期选择器:

(1)示例代码:“pages/data1/data1”
data1.WXML

<view>
<view>{
  {year}}年{
  {month}}月{
  {day}}日</view>
<picker-view
indicator-style="height: 50px;"
style="width: 100%; height: 300px;"
value="{
  {value}}"
bindchange="bindChange"
>
<picker-view-column>
<view wx:for="{
  {years}}" wx:key='{
  {index}}' style="line-height: 50px">{
  {item}}年</view>
</picker-view-column>

<picker-view-column>
<view wx:for="{
  {months}}" wx:key='{
  {index}}' style="line-height: 50px">{
  {item}}月</view>
</picker-view-column>

<picker-view-column>
<view wx:for="{
  {days}}" wx:key='{
  {index}}' style="line-height: 50px">{
  {item}}日</view>
</picker-view-column>
</picker-view>
</view>

data1.JS

/ 定义年、月、日的数组都为空
const date = new Date()
const years = []
const months = []
const days = []
// 获取年
for (let i = 1990; i <= date.getFullYear(); i++) {
years.push(i)
}
// 获取月份
for (let i = 1; i <= 12; i++) {
months.push(i)
}
// 获取日期
for (let i = 1; i <= 31; i++) {
days.push(i)
}

Page({
// 初始默认的日期
data: {
years,
year: date.getFullYear(),
months,
month: 2,
days,
day: 2,
value: [9999, 1, 1],
},
// 获取改变后的日期
bindChange(e) {
const val = e.detail.value
this.setData({
year: this.data.years[val[0]],
month: this.data.months[val[1]],
day: this.data.days[val[2]]
})
}
})

3.时间选择器

(1)示例代码:“pages/data2/data2”
data2.WXML

<view>
<view style="text-align:center;color:#45BCE8">{
  {hour}}:{
  {minute}}:{
  {min}}<label style="float:right;margin-right:10px;">确定</label></view>
<view style="border-top:1px solid #45BCE8;height:25px;font-size:14px;">
<view class="time-title">时</view>
<view class="time-title">分</view>
<view class="time-title">秒</view>
</view>

<picker-view indicator-style="height: 50px;" style="width: 100%; height: 300px;" value="{
  {value}}" bindchange="bindChange">
<picker-view-column class="picker-text">
<view wx:for="{
  {hours}}" wx:key='{
  {index}}' style="line-height: 50px">{
  {item}}</view>
</picker-view-column>

<picker-view-column class="picker-text">
<view wx:for="{
  {minutes}}" wx:key='{
  {index}}' style="line-height: 50px">{
  {item}}</view>
</picker-view-column>

<picker-view-column class="picker-text">
<view wx:for="{
  {mins}}" wx:key='{
  {index}}' style="line-height: 50px">{
  {item}}</view>
</picker-view-column>

</picker-view>
</view>

data2.WXSS

.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微信小程序-日期时间选择器 的相关文章

  • JavaEE项目实战(OA系统)之十九_流程审批之二

    JavaEE项目实战 OA系统 之十九 流程审批之二 这部分的程序界面原型如下 1 请假页面 员工如需请假 在登录系统后 点击请假功能 填写各项数据后 提交审批 也可以暂时不提交 将内容保存为草稿 以后可以加入功能 查看我的请假 和 草稿箱
  • 【Linux】Linux中jar包的压缩和解压缩

    1 概述 问题 在生产环境 有时会有需要修改jar中url的需求 目前我遇到的 此时 unzip tar命令都失去了用武之地 解决办法 假如文件 是file jar ls l xx xxx xx flink lang jar xx xxx
  • 端口访问被拒绝的解决方案

    端口访问被拒绝的解决方案 ps 本人亲测 阿里云2核4G5M的服务器性价比很高 新用户一块多一天 老用户三块多一天 最高可以买三年 感兴趣的可以戳一下 阿里云折扣服务器 问题描述 比如在本机telent到192 168 8 170 主机的9
  • 02Linux下C语言锁的学习之Linux下的读写锁

    02Linux下C语言锁的学习之Linux下的读写锁 概述 下面的锁的意思均是代表读写锁 读写锁的特性 1 若一把锁被一个线程以读方式锁住 当其它线程以读方式上锁的话 那么可以上锁成功 2 若一把锁被一个线程以写方式锁住 当其它线程以读或者
  • JavaScript HSL拾色器

    HSL 和 HSV 在数学上定义为在 RGB 空间中的颜色的 R G 和 B 的坐标的变换 从 RGB 到 HSL 或 HSV 的转换 设 r g b 分别是一个颜色的红 绿和蓝坐标 它们的值是在 0 到 1 之间的实数 设 max 等价于
  • 快慢指针解决 LeetCode 数组移除元素

    题面 移除元素 给你一个数组 nums 和一个值 val 你需要 原地 移除所有数值等于 val 的元素 并返回移除后数组的新长度 不要使用额外的数组空间 你必须仅使用 O 1 额外空间并 原地 修改输入数组 元素的顺序可以改变 你不需要考
  • SAP WM LT21界面里源发仓位以及目的地仓位的显示

    SAP WM LT21界面里源发仓位以及目的地仓位的显示 SAP WM模块中事务代码LT21用于显示转储单 TO单 在这个界面里 在TO单号码下方的位置 看起来像是HEADER的位置 会显示source storage bin destin
  • PCB设计笔记

    系列文章目录 1 元件基础 2 电路设计 3 PCB设计 4 元件焊接 5 板子调试 6 程序设计 7 算法学习 8 编写exe 9 检测标准 10 项目举例 11 职业规划 文章目录 前言 一 PCB板上的 地 1 详解电路设计中单点接地
  • FBX导入Unity中模型没有材质的处理

    一 3dMax导出FBX时的注意事项 导出时 确保maps文件存在 里面放着fbx用到的image 二 在Unity中的设置 1 文件拖入Unity的Assets文件夹中 2 查看模型的材质是否存在 如下所示 材质为None 此时拖入sce
  • 11-9 复制一个文件(方法三)

    1 利用 fread 和 fwrite 函数进行文件复制 方法一 利用读写一个字符的函数进行文件复制 速度较慢 但是适用于文本和二进制文件 方法二 利用读写一行字符的函数进行文件复制 速度较快 但仅适用于文本文件 使用 fread 和 fw
  • css3属性将单词换行并添加中划线(连字符)

    1 HTML页面 必须为英文语言 2 CSS页面 product desc width 520px max height 160px overflow hidden hyphens auto 效果 这样就把单词performance换行并添
  • [LINUX]虚拟机LinuxUbuntu上对.tarxz和.zip解压

    在虚拟机中的Linux Ubuntu系统上 你可以使用以下命令来解压 tar xz 和 zip 压缩包 1 解压 tar xz 压缩包 使用 tar 命令来解压 tar xz 压缩包 命令的格式是 tar xJf 压缩包文件名 tar xz
  • elasticsearch-head chrome 插件安装

    前言 由于不能直接访问谷歌商店下载插件 但可以直接在 Github 下载 地址 https github com mobz elasticsearch head raw master crx es head crx 如果觉得慢 可在此下载
  • SAS安装错误

    SAS安装 SAS安装分为两个阶段 系统要求 安装 第1阶段 Stage1 系统要求 System Requirement 需确保安装Microsoft Office Access Database Engine Microsoft Run
  • 定位shadow

    1 先定位到 shadow root 的宿主节点 此处为 id box 的 div 2 切换到 shadow root 中 3 然后再选择 shadow root 下的 span 标签 import time from selenium i
  • 2022亚太数学杯数学建模竞赛C题(思路、程序......)

    目录 一 英文题目及数据 二 中文翻译题目参考 2 1 题目 2 2 题目 三 思路 程序参考 四 参考文献 一 英文题目及数据 Canada s 49 6 C has set a new temperature record for re
  • 前端高频面试题 js中堆和栈的区别和浏览器的垃圾回收机制

    一 栈 stack 和 堆 heap 栈 stack 是栈内存的简称 栈是自动分配相对固定大小的内存空间 并由系统自动释放 栈数据结构遵循FILO first in last out 先进后出的原则 较为经典的就是乒乓球盒结构 先放进去的乒
  • 将数据导入Hive数据库中,使用python链接Hive读取数据库,转化成pandas的dataframe

    做互联网应用开发过程中 时常需要面对海量的数据存储及计算 传统的服务器已经很难再满足一些运算需求 基于hadoop spark的大数据处理平台得到广泛的应用 本文提供一个导入数据到hive 用python读取hive数据库的例子 这实际是个

随机推荐

  • blender学习记录3--物体的操作

    添加删除物体 删除选中物体按delete或者x 进行选择删除 操作面板 在上一个步骤 比如添加物体 后 在屏幕两侧下方都会出现添加xx 点开这个操作面板就能够将刚添加的物体属性进行选择 若是做了其他步骤还想在修改只能在侧栏的条目或者编辑器类
  • 使用大块内存的设置

    C 如下分配内存的代码 booleantempTag true do try double K NULL int nnz cout lt lt 请输入分配内存大小 MB lt
  • logstash过滤器插件filter详解及实例

    原创作者 峰哥ge 原创地址 https www cnblogs com FengGeBlog p 10305318 html logstash过滤器插件filter grok正则捕获 grok是一个十分强大的logstash filter
  • Docker:数据卷&数据卷容器

    一 概念解析 1 数据卷 数据卷就是在宿主中可以在容器之间进行共享和重用的一系列和文件和文件夹 通过docker run v命令可以将数据卷挂载到对应的容器目录空间 进行文件读取 容器卷特性如下 数据卷可以在容器之间共享和重用 容器间传递数
  • MOOC《Python语言程序设计》第6周练习题

    这周讲解了组合数据类型 重点介绍表达和处理一组数据的方法 涉及到多种数据类型 包括 集合类型 序列类型 含元组类型和列表类型 和字典类型 讲解2个颇有用处的实例 基本统计值计算和文本词频统计 其中 即有英文Hamlet的词频统计 也有中文
  • mysql设置utf-8和查询修改数据库、表常用命令

    mysql设置utf 8和查询修改数据库 表常用命令 1 设置utf8字符集 2 查询修改数据库 表的字符集 1 设置utf8字符集 二级目录 默认情况下 通过 show variables like char 命令查询mysql字符编码如
  • 'findstr' 不是内部或外部命令,也不是可运行的程序或批处理文件

    今天通过windows cmd客户端输入 solr cmd start 启动solr时 提示 findstr 不是内部或外部命令 也不是可运行的程序或批处理文件 这是PATH环境变量的问题 将windows命令的目录添加到PATH中就好了
  • JDBC连接步骤

    第一步 在项目中新建一个名称叫lib的文件夹 然后将下载的MySQL连接jar包存入到这个lib文件夹中并配置环境 第二步 编写代码 连接数据库并操作数据库中某个表里的数据 基本操作 1 注册驱动 Class forName com mys
  • matlab 非极大值抑制,非极大值抑制算法(matlab实现)

    参考 http www cnblogs com liekkas0626 p 5219244 html function pickLocate nms boxes overlap Non maximum suppression In obje
  • leetcode 字符串压缩

    思路 用双指针的方法 定一个 i 和 j AC代码 class Solution public string compressString string S 两层循环 if S size 0 return S int i 0 j 0 str
  • 【杂谈】概率与随机以及手游抽卡机制的科普

    原文 NGA的一篇随机科普 其中包含了对手游抽卡机制的探讨 本文摘选了我自己感兴趣的部分 真随机 先说点题外话 请先看这个问题 一杯热水和一杯冷牛奶哪个热量更高 很显然这个问题从物理学和营养学的层面会得出相反的答案 先不考虑物理学层面说 一
  • java 静态初始化块中,方法中不可以定义静态变量(重要)

    来源 https zhidao baidu com question 493515697 html 静态变量只能定义在类的内部 不可以定义在静态块或方法中 可以在类内部定义静态变量 在静态块中进行初始化操作 因为类的内部是不允许有操作语句存
  • uniapp开发常见问题整理

    1 自适应尺寸 移动端开发时使用rpx单位 以便适应各种手机像素 避免使用px 2 微信超包限制 小程序规定每个包源码不能超过2M uniapp打包时会将一些公共资源打包到主包中 从而造成小程序无法打包上传 提倡做法 1 底部导航栏对应的界
  • gitlab remote: HTTP Basic: Access denied

    使用 http流程 问题 git push报错 HTTP Basic Access denied 原因 本地git配置的用户名 密码与gitlabs上注册的用户名 密码不一致 解决方案 进入控制面板 用户账号 凭据管理器 windows凭据
  • Linux NAT软路由的简介、入门与配置

    本文目录 1 确认Linux kernel内核版本 2 netfilter的nat table简介 3 用iptables实现SNAT 3 1 多对多 N N 的SNAT 3 2 将一个网段内的某个公网IP移除出SNAT可用的公有IP地址池
  • Python Logging 模块

    Python Logging 模块 1 Logging 模块介绍 介绍连接 https www jianshu com p 7b5e4752932e Python 中的 logging 模块可以让你跟踪代码运行时的事件 当程序崩溃时可以查看
  • 刷新完固件后opkg update报错的解决方法

    刷新完固件后opkg update报错的解决方法 一 更改设备ip 当你使用lan口接入局域网后 如果你ping不通局域网上的其他设备ip 那么需要更改ip vim etc config network 修改lan口的ip为局域网下同一网段
  • js中相对路径写法

    表示上一级目录开始 表示同级目录开始 表示根目录开始
  • display和visibility的区别

  • 微信小程序-日期时间选择器

    我在官方表单组件的基础上改出了几种比较常用的日期 时间 选择器 为了更清晰 我没给任何样式 wxss可根据个人喜好添加 一 picker view 嵌入页面的滚动选择器 注意 其中只可放置组件 其他节点不会显示 picker view co