引入文件:

<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下拉选择日期的联动效果的更多相关文章

  1. CSS自定义select下拉选择框(不用其他标签模拟)

    今天群里有人问到怎么自定义select下拉选择框的样式,于是群里就展开了激烈的讨论,刚开始一直就是考虑怎样使用纯CSS实现,把浏览器默认的样式覆盖掉,但最后均因兼容问题处理不好而失败告终,最后的解决方 ...

  2. [jQueryUI] – Chosen:select下拉选择框美化插件及问题

    Chosen 是一个支持jquery的select下拉框美化插件,它能让丑陋的.很长的select选择框变的更好看.更方便.不仅如此,它更扩展了select,增加了自动筛选的功能.它可对列表进行分组, ...

  3. iosselect:一个js picker项目,在H5中实现IOS的select下拉框效果

    具体文档和demo可以访问github:https://github.com/zhoushengmufc/iosselect 移动端浏览器对于select的展示样式是不一致的,ios下是类似原生的pi ...

  4. jquery combo.select. 下拉选择插件

    演示地址:http://www.dowebok.com/demo/179/index5.html 引入js.css 即可使用,效果如图所示: 这个插件的好处是可以在输入框里面输入数据 自动检索内容. ...

  5. 类似select下拉选择框同时又支持手动输入的元素 datalist 介绍。

    有时候我们会有这样的需求,通过使用下拉菜单给用户一定的选择范围,同时又可以使用户在找不到选择项的时候手动输入.这个时候我们就需要用到html5的datalist属性了. datalist包含<o ...

  6. Ajax来实现下拉框省市区三级联动效果(服务端基于express)

    //服务端JS代码: //提供服务端的处理 const express = require('express'); const fs = require('fs'); const app = expr ...

  7. 用js实现两个select下拉框之间的元素互相移动

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. select 下拉选择自动到textarea框

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 原生JavaScript写select下拉选择后跳转页面

    <select name="molsel_oprate" onchange="javascript:var obj = event.target; var inde ...

随机推荐

  1. Spring → 01:概述

    一.了解Spring发展 Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由Rod Johnson在其著作Expert One-On-One J2EE Dev ...

  2. java中的volatile和synchronized

    关于volatile和同步相关的东西,网上有太多错误和解释不清的东西, 所以查阅相关书籍和文章后总结如下, 如果还是也存在不正确的内容,请一定要指出来, 以免误人子弟:) 1. 原子性与可视性 原子性 ...

  3. uva 10739【基础(区间)dp】

    Uva 10739 题意:给定字符串,可以增加.删除.修改任意字符,问最少经过多少次操作使字符串回文. 题解:定义dp[l][r]表示把从l到r的子串Sl...Sr变成回文串需要操作的最少次数.字符可 ...

  4. linux驱动开发满三年,回首一下基本看不到其它选择

    刚刚搞完一个处理器BSP项目,准备搞下一个自研处理器.说不上来什么喜悦,仅仅有些许茫然.没有刚毕业时对这个行业的痴迷,慢慢认同这仅仅是个谋生工具的想法. 回忆当初编写第一个驱动,就像上了战场.被长官踢 ...

  5. jq获取浏览器可视窗口的高度

    <script> var window_height = $(window).height(); </script>

  6. MaxCompute 费用暴涨之新增SQL分区裁剪失败

    现象:因业务需求新增了SQL任务,这SQL扫描的表为分区表,且SQL条件里表只指定了一个分区,按指定的分区来看数据量并不大,但是SQL的费用非常高.费用比预想的结果相差几倍甚至10倍以上. 若只知道总 ...

  7. 01-常见Dos命令、Java历史、Java跨平台、配置Path环境变量、第一个HelloWorld例子

    常见Dos命令 dir: 列出当前目录下的文件以及文件夹 md: 创建目录 rd: 删除目录 cd: 进入指定目录 del: 删除文件 copy: 复制文件 xcopy: 复制目录 tree: 列出目 ...

  8. 用GitHub Pages搭了个博客,欢迎来玩~

    Welcome to visit my new blog https://luoxiaolei.github.io/ Ps. 后续的blog会优先更新到GitHub Pages上.

  9. init()方法必须使用super.init(config)的原因--Servlet

    原 因: 一个servlet在它的init()方法中传递它的ServletConfig实例,在其他的方法中却不可以.当一个servlet在 init()方法外需要调用config对象时就会产生问题.使 ...

  10. CENTOS7安装R语言环境

    CENTOS7安装R语言环境 yum install texinfo.x86_64 yum install texlive.x86_64 cd /opt wget https://mirrors.tu ...