使用iOSSelect.js实现iOS的select下拉选择日期的联动效果
引入文件:
<link rel="stylesheet" href="/static/css/iosSelect.css">
<script type="text/javascript" src="/static/js/iosSelect.js"></script>
HTML部分:
<div class="mui-input-row">
<input type="text" class="mui-input-clear" placeholder="请选择开始日期" @click="calendshow($event)">
</div>
<div class="mui-input-row">
<input type="text" class="mui-input-clear" placeholder="请选择结束日期" @click="calendshow($event)">
</div>
写一个循环的时间段,本文是:2019 - 2029
// 时间插件开始
function yearData(one, two, three, callback) {
var years = [];
for (var i = 2019, len = 2029; i < len; i++) {
if (i < 10) {
i = '0' + i
}
years.push({
id: i,
value: i + '年'
});
}
return years;
} function monthData(one, two, three, callback) {
var months = [];
for (var i =1, len = 13; i < len; i++) {
if (i < 10) {
i = '0' + i
}
months.push({
id: i,
value: i + '月'
});
}
return months;
} function dayData(one, two, three, callback) {
var days = [];
for (var i = 1, len = 31; i < len; i++) {
if (i < 10) {
i = '0' + i
}
days.push({
id: i,
value: i + '日'
});
}
return days;
} function hourData(one, two, three, callback) {
var hours = [];
for (var i = 0, len = 24; i < len; i++) {
if (i < 10) {
i = '0' + i
}
hours.push({
id: i,
value: i + '时'
});
}
return hours;
} function minuteData(one, two, three, four, callback) {
var minutes = [];
for (var i = 0, len = 60; i < len; i++) {
if (i < 10) {
i = '0' + i
}
minutes.push({
id: i,
value: i + '分'
});
}
return minutes;
}
// 时间插件开始
调用方法渲染到页面:
function calendshow (event) {
//console.log(event)
var el = event.currentTarget;
var self = this;
var oneLevelId = this.years;
var twoLevelId = this.months;
var threeLevelId = this.days;
var fourLevelId = this.hours;
var fiveLevelId = this.minuts;
var self = this;
var iosSelect = new IosSelect(5,
[self.yearData(), self.monthData(), self.dayData(), self.hourData(), self.minuteData()], {
title: '',
itemHeight: 35,
itemShowCount: 6,
oneLevelId: oneLevelId,
twoLevelId: twoLevelId,
threeLevelId: threeLevelId,
fourLevelId: fourLevelId,
fiveLevelId: fiveLevelId,
callback: function (selectOneObj, selectTwoObj, selectThreeObj, selectFourObj, selectFiveObj) {
// console.log(selectOneObj, selectTwoObj, selectThreeObj, selectFourObj, selectFiveObj)
self.years = (selectOneObj.value).split('年')[0]
self.months = (selectTwoObj.value).split('月')[0]
self.days = (selectThreeObj.value).split('日')[0]
self.hours = (selectFourObj.value).split('时')[0]
self.minuts = (selectFiveObj.value).split('分')[0];
//console.log(self.years + '-' + self.months + '-' + self.days + ' ' + self.hours + ':' + self.minuts)
$(el).val(self.years + '-' + self.months + '-' + self.days + ' ' + self.hours + ':' + self.minuts)
}
}
);
}
效果展示:

使用iOSSelect.js实现iOS的select下拉选择日期的联动效果的更多相关文章
- CSS自定义select下拉选择框(不用其他标签模拟)
今天群里有人问到怎么自定义select下拉选择框的样式,于是群里就展开了激烈的讨论,刚开始一直就是考虑怎样使用纯CSS实现,把浏览器默认的样式覆盖掉,但最后均因兼容问题处理不好而失败告终,最后的解决方 ...
- [jQueryUI] – Chosen:select下拉选择框美化插件及问题
Chosen 是一个支持jquery的select下拉框美化插件,它能让丑陋的.很长的select选择框变的更好看.更方便.不仅如此,它更扩展了select,增加了自动筛选的功能.它可对列表进行分组, ...
- iosselect:一个js picker项目,在H5中实现IOS的select下拉框效果
具体文档和demo可以访问github:https://github.com/zhoushengmufc/iosselect 移动端浏览器对于select的展示样式是不一致的,ios下是类似原生的pi ...
- jquery combo.select. 下拉选择插件
演示地址:http://www.dowebok.com/demo/179/index5.html 引入js.css 即可使用,效果如图所示: 这个插件的好处是可以在输入框里面输入数据 自动检索内容. ...
- 类似select下拉选择框同时又支持手动输入的元素 datalist 介绍。
有时候我们会有这样的需求,通过使用下拉菜单给用户一定的选择范围,同时又可以使用户在找不到选择项的时候手动输入.这个时候我们就需要用到html5的datalist属性了. datalist包含<o ...
- Ajax来实现下拉框省市区三级联动效果(服务端基于express)
//服务端JS代码: //提供服务端的处理 const express = require('express'); const fs = require('fs'); const app = expr ...
- 用js实现两个select下拉框之间的元素互相移动
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- select 下拉选择自动到textarea框
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 原生JavaScript写select下拉选择后跳转页面
<select name="molsel_oprate" onchange="javascript:var obj = event.target; var inde ...
随机推荐
- JavaScript--函数表达式与函数声明的区别
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- thinkphp---display与fetch区别
区别: ① display方法直接输出模板文件渲染后的内容,fetch方法是返回模板文件渲染后的内容 ② 有时候我们不想直接输出模板内容,而是希望对内容再进行一些处理后输出, 就可以使用fetch方法 ...
- C++之以分隔符的形式获取字符串
void CConvert::Split(const std::string& src, const std::string& separator, std::vector<st ...
- jdbc知识点(连接mysql)
jdbc连接mysql 1.JDBC简介 JDBC: 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库.从根本上来说,JDBC ...
- Web富媒体应用
曾几何时,大家都在以flash开发的富媒体交互应用而感叹,一是叹它的丰富多彩的效果,一是叹它的局限.性能以及加载时长等问题. 如今,市场以及基本上没有flash什么事情了,而是H5的天下,可惜,移动应 ...
- 巨蟒python全栈开发-第11阶段 ansible3_1入门四个模块command&shell&script©
大纲 1.系统安装与机器克隆 2.ansible介绍和host-pattern格式 3.command模块 4.shell模块 5.script模块 6.copy模块
- [ZJOI2007] 小Q的矩阵游戏 (模板—Dinic)
B. 矩阵游戏 题目描述 小Q是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏——矩阵游戏.矩阵游戏在一个N*N黑白方阵进行(如同国际象棋一般,只是颜色是随意的).每次可以对该矩阵进行 ...
- UITableView 刷新问题
遇到的问题: 在程序里异步请求服务器后回调函数中处理数据和界面数据的刷新,但是更新UITableView的时候总是很慢才更新完,打印TableView的代理方法也都很快打印. 解决办法就是: [sel ...
- CSS3表达式calc( )
CSS3表达式calc( ) 第一次看到calc( )时,不太相信calc()是css中的部分.因为看其外表像个函数,但是CSS里为啥会有表达式我也不太清楚,偶然机会在网页里看到的,自己切片写自适应时 ...
- iptables禁止icmp端口
除192.168.62.1外,禁止其它人ping我的主机 #iptables -A INPUT -i eth0 -s 192.168.62.1/32 -p icmp -m icmp --icmp-ty ...