引入文件:

<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. 读JS高性能总结——DOM编程(一)

    DOM是一个与语言无关的API,它在浏览器中的借口却是用JS来实现的. 浏览器通常会把DOM和JS独立实现. 在IE中,JS的实现名是JScript,位于jscript.dll文件中,DOM实现则是m ...

  2. cat、head、tail、more和less命令(文件内容浏览)

    一.cat命令 cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容. 注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容.因此,一般用more等命令分屏显 ...

  3. 【JZOJ4964】【GDKOI2017模拟1.21】Rhyme

    hafy 由于多次交换邮票没有满足所有人的需求,小Z被赶出了集邮部.无处可去的小Z决定加入音乐部,为了让音乐部的人注意到自己的才华,小Z想写一首曲子.为了让自己的曲子更好听,小Z找到了一些好听曲子作为 ...

  4. 遗传算法MATLAB实现(3):多元函数优化举例

    多峰的Shubert为: 求f(x,y)在[-10,10]x[-10,10]上的最大值. MATLAB代码: fun_mutv函数为: function my=fun_mutv(x,y) t1=zer ...

  5. 关于mybatis中llike模糊查询中#和$的使用

    模糊查询: 工作中用到,写三种用法吧,第四种为大小写匹配查询 1. sql中字符串拼接 SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('% ...

  6. 14-1 jquery的dom操作和事件对象

    一 jquery的操作有,插入,修改,删除,克隆.具体见下方代码实例: <!DOCTYPE html> <html lang="en"> <head& ...

  7. Freeware Tools For Linux, http://www.debianhelp.co.uk/tools.htm

    Freeware Tools For Linux, http://www.debianhelp.co.uk/tools.htm Freeware Tools For Linux DNS related ...

  8. http://www.freeopensourcesoftware.org

    Applications http://www.freeopensourcesoftware.org/index.php?title=Applications   Main Page > Thi ...

  9. day6_python之pickle、shelve序列化和反序列化

    pickle.shelve,python私有,支持所有python数据类型 一.pickle dic={'name':'egon','age':18} print(pickle.dumps(dic)) ...

  10. visual studio 2013 修改mvc5的视图模板

    C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffol ...