27HUI - picker(huiPicker)

简介: 27HUI - picker(huiPicker)

效果图

使用方法

1、引用 hui-picker.js

2、创建触发dom元素,例如

<button type="button" class="hui-button hui-button-large" id="btn1">选择时间</button

3、获取picker对象,如:

var picker = new huiPicker(’#picker’, function(){});

4、设置菜单层级

5、绑定数据(关联数据及非关联数据)

huiPicker(selector, callBack)

参数1 : selector 单一元素选择器

参数2 : 点击确定按钮执行的回调函数

level属性

level属性用于设置级联菜单的层级数,默认1;如:

picker3.level = 3; //设置联动层级为3层

bindData(levelIndex, data) 绑定非关联数据

功能:为菜单绑定非关联数据;

参数:

1、菜单层级, con0开始;

2、一维数组,格式 new Array({value:xx, text},…);

如:

var years = new Array();
for(var i = 2000; i <= 2017; i++){years.push({value:i, text:i});}
picker1.bindData(0, years);
bindRelevanceData(cities);绑定关联性数据

功能:为菜单绑定非关联数据;

参数:关联性多维数组,格式:

var cities = [{
    value: '100000',
    text: '陕西省',
    children: [
        {
            value: '100001',
            text: '西安市'
        },
        {
             value: '100002',
            text: '宝鸡市'
        }
    ]
    }
];
picker.getText(index);获取选中的文本

功能:获取picker对象选中的文本;

参数:菜单层级,从0开始;

picker.getVal(index);获取选中的值

功能:获取picker对象选中的值;

参数:菜单层级,从0开始;

完整演示代码

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<title>HUI Picker</title>
<link rel="stylesheet" type="text/css" href="../css/hui.css" />
</head>
<body>
<header class="hui-header">
    <div id="hui-back"></div>
    <h1>HUI Picker</h1>
</header>
<div class="hui-wrap">
    <div class="hui-center-title" style="margin-top:15px;"><h1>演示样例</h1></div>
    <div style="padding:28px;">
        <button type="button" class="hui-button hui-button-large" id="btn1">选择性别</button>
        <button type="button" class="hui-button hui-button-large" id="btn2" style="margin-top:20px;">选择地区</button>
    </div>
</div>
<script type="text/javascript" src="../js/hui.js" charset="utf-8"></script>
<script type="text/javascript" src="../js/hui-picker.js" charset="utf-8"></script>
<script type="text/javascript" src="../js/cities.js" charset="utf-8"></script>
<script type="text/javascript">
/* 普通选择器 非关联型绑定 */
var picker1 = new huiPicker('#btn1', function(){
    var val = picker1.getVal(0);
    var txt = picker1.getText(0);
    hui('#btn1').html(txt + '[' + val + ']');
});
picker1.bindData(0, [{value:1, text:'男'},{value:2, text:'女'}]);
/* 地区选择, 关联型数据 */
var picker2 = new huiPicker('#btn2', function(){
    var sheng   = picker2.getText(0);
    var shi     = picker2.getText(1);
    var qu      = picker2.getText(2);
    hui('#btn2').html(sheng + shi + qu);
});
picker2.level = 3;
//cities 数据来源于 cities.js
picker2.bindRelevanceData(cities);
</script>
</body>
</html>
目录
相关文章
|
容器
uniapp中制作侧边导航栏
uniapp中制作侧边导航栏
880 0
|
前端开发 JavaScript
前端基础(十三)_定时器(间歇定时器、延迟定时器)
本文介绍了JavaScript中定时器的使用,包括`setTimeout`和`setInterval`两种类型。`setTimeout`是实现延迟执行,即等待一定时间后执行一次指定的函数;而`setInterval`是实现间歇执行,即每隔一定时间就执行一次指定的函数。文章还介绍了如何使用`clearTimeout`和`clearInterval`来取消定时器的执行,并通过示例代码展示了定时器的创建和取消。
587 4
前端基础(十三)_定时器(间歇定时器、延迟定时器)
|
JSON Rust 安全
【一起学Rust | 框架篇 | Viz框架】轻量级 Web 框架——Viz
【一起学Rust | 框架篇 | Viz框架】轻量级 Web 框架——Viz
562 0
|
前端开发 Android开发 iOS开发
应用研发平台EMAS使用 aliyun-react-native-push 库接入推送和辅助通道,推送都可以收到,但是在App切到后台或者杀掉进程之后就收不到推送了,是需要配置什么吗?
【2月更文挑战第31天】应用研发平台EMAS使用 aliyun-react-native-push 库接入推送和辅助通道,推送都可以收到,但是在App切到后台或者杀掉进程之后就收不到推送了,是需要配置什么吗?
425 2
|
数据可视化 Java 应用服务中间件
springboot打war包,成功部署
这篇文章介绍了如何将Spring Boot项目打包成WAR文件,并成功部署到Tomcat服务器的详细步骤。
1327 0
springboot打war包,成功部署
|
XML Java Maven
logback在springBoot项目中的使用 springboot中使用日志进行持久化保存日志信息
这篇文章详细介绍了如何在Spring Boot项目中使用logback进行日志记录,包括Maven依赖配置、logback配置文件的编写,以及实现的日志持久化和控制台输出效果。
logback在springBoot项目中的使用 springboot中使用日志进行持久化保存日志信息
|
前端开发
大屏自适应/适配方案【详解】(echarts自适配、rem、flexible.js、vscode中px2rem插件自动计算rem)
大屏自适应/适配方案【详解】(echarts自适配、rem、flexible.js、vscode中px2rem插件自动计算rem)
1623 0
|
XML Java Android开发
Android Studio App开发之网络通信中使用POST方式调用HTTP接口实现应用更新功能(附源码 超详细必看)
Android Studio App开发之网络通信中使用POST方式调用HTTP接口实现应用更新功能(附源码 超详细必看)
757 0
|
Android开发 网络架构
【Android App】检查手机连接WiFi信息以及扫描周围WiFi的讲解及实战(附源码和演示 超详细必看)
【Android App】检查手机连接WiFi信息以及扫描周围WiFi的讲解及实战(附源码和演示 超详细必看)
1898 1
|
编解码 前端开发 开发者
这篇彻底学会CSS 响应式布局
【4月更文挑战第1天】这篇彻底学会CSS 响应式布局
466 0