本节课重点了解 EasyUI 中 Combo(自定义下拉框)组件的使用方法,这个组件依赖于
ValidateBox(验证框)组件

一. 加载方式
自定义下拉框不能通过标签的方式进行创建。
<input id="box">
//JS 加载调用
$('#box').combo({
required : true,
multiple : true,
});
如果要实现自定义下来选择(图片、文本、按钮均可),需要配合一些代码。
<div id="food">
<div style="color:#99BBE8;background:#fafafa;padding:5px;">
请选择一个食物</div>
<div style="padding:10px">
<input type="radio" name="food" value="01">
<span>煎饼果子</span><br/>
<input type="radio" name="food" value="02">
<span>牛腩米线</span><br/>
<input type="radio" name="food" value="03">
<span>水果沙拉</span><br/>
<input type="radio" name="food" value="04">
<span>蛋黄派</span><br/>
<input type="radio" name="food" value="05">
<span>其他</span>
</div>
</div>
$('#food').appendTo($('#box').combo('panel'));

$('#food input').click(function(){
var v = $(this).val();
var s = $(this).next('span').text();
$('#box').combo('setValue', v).combo('setText', s)
.combo('hidePanel');

二. 属性列表

//属性设置
$('#box').combo({
width : 300,
height : 50,
panelWidth : 300,
panelHeight : 200,
disabled : true,
hasDownArrow : false,
delay : 50,

editable : false,
readonly : true,
required : true,
multiple : true,
});

PS:这里有些属性无法在单独组件使用中体现它的效果,需要配合整个表单或服务器
支持。在后面的课程中设计到综合使用的时候再去了解。

三. 事件列表

//事件列表
$('#box').combo({
required : true,
onShowPanel : function () {
alert('下拉的时候触发!');
},
onHidePanel : function () {
alert('下拉面板隐藏的时候触发!');
},
onChange : function () {
alert('字段值改变的时候触发!');
},
});

四.方法列表

//返回属性对象
console.log($('#box').combo('options'));
//返回下拉面板对象
console.log($('#box').combo('panel'));
//返回文本框对象
console.log($('#box').combo('textbox'));
//销毁组件
$('#box').combo('destroy');
//禁用和启用
$('#box').combo('disable');
$('#box').combo('enable');
//调整到默认宽度
$(document).click(function () {
$('#box').combo('resize', 'width');
});
//显示下拉面板
$(document).click(function () {
$('#box').combo('showPanel');

});
//隐藏下拉面板
$('#box').combo('hidePanel');
//启用禁用,true 可不填,false 则为不启用
$('#box').combo('readonly',true);
//验证文本框内的值是否合法
$(document).click(function () {
console.log($('#box').combo('isValid'));
});
//清空文本框内容
$(document).dblclick(function () {
$('#box').combo('clear');
});
//重置文本框到初始状态
$(document).dblclick(function () {
$('#box').combo('reset');
});
//得到文本框字符串
$(document).click(function () {
console.log($('#box').combo('getText'));
});
//设置文本框字符串
$(document).click(function () {
console.log($('#box').combo('getText'));
});
//获取组件的 Value 值
$(document).click(function () {
console.log($('#box').combo('getValue'));
console.log($('#box').combo('getValues'));
});
PS:我们可以使用$.fn.combo.defaults 重写默认值对象。

Combo( 自定义下拉框) 组件的更多相关文章

  1. 第二百一十二节,jQuery EasyUI,Combo(自定义下拉框)组件

    jQuery EasyUI,Combo(自定义下拉框)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 Combo(自定义下拉框)组件的使用方 ...

  2. vue自定义下拉框组件

    创建下拉框组件 Select.vue <template> <div class="selects"> <div :class="{sele ...

  3. 第二百二十四节,jQuery EasyUI,ComboGrid(数据表格下拉框)组件

    jQuery EasyUI,ComboGrid(数据表格下拉框)组件 学习要点: 1.加载方式 2.属性列表 3.方法列表 本节课重点了解 EasyUI 中 ComboGrid(数据表格下拉框)组件的 ...

  4. ComboTree( 树型下拉框) 组件

    本节课重点了解EasyUI中Tree(树)组件的使用方法, 这个组件依赖于Combo(下拉框)和 Tree(树)组件.一. 加载方式//class 加载方式<select id="cc ...

  5. 第二百二十七节,jQuery EasyUI,ComboTree(树型下拉框)组件

    jQuery EasyUI,ComboTree(树型下拉框)组件 学习要点: 1.加载方式 2.属性列表 3.方法列表 本节课重点了解EasyUI中ComboTree(树型下拉框)组件的使用方法,这个 ...

  6. easyui源码翻译1.32--Combo(自定义下拉框)

    前言 扩展自$.fn.validatebox.defaults.使用$.fn.combo.defaults重写默认值对象.下载该插件翻译源码 自定义下拉框显示一个可编辑的文本框和下拉面板在html页面 ...

  7. 自绘制HT For Web ComboBox下拉框组件

    传统的HTML5的下拉框select只能实现简单的文字下拉列表,而HTforWeb通用组件中ComboBox不仅能够实现传统HTML5下拉框效果,而且可以在文本框和下拉列表中添加自定义的小图标,让整个 ...

  8. jquery美化select,自定义下拉框样式

    select默认的样式比较丑,有些应用需要美化select,在网上找到一个很好的美化样式效果,本人很喜欢,在这里分享一下. <!DOCTYPE html PUBLIC "-//W3C/ ...

  9. 关于safari上的select宽高问题小技,自定义下拉框

    之前一直用windows做开发,最近换了个mac,在几经折腾之下,安装完了各种开发工具,IDE等,然后欣然打开自己正在开发的网站.突然发现mac上所有的下拉框都变了,都是默认样式,无论padding, ...

随机推荐

  1. 【转】深入理解Java内存模型(四)——volatile

    volatile的特性 当我们声明共享变量为volatile后,对这个变量的读/写将会很特别.理解volatile特性的一个好方法是:把对volatile变量的单个读/写,看成是使用同一个监视器锁对这 ...

  2. 【JQuery学习笔记】一、基础篇

    Lesson2 Ready 和onload类似,但onload只能注册一次,后注册的取代现注册的,而Ready可以多次注册都会执行 onload是所有院所创建完毕.图片.Css等都加载完毕后才触发,而 ...

  3. Java中的内部类、匿名类的使用

    代码(test.java): interface ie{ public void print(); } class outer{} public class test{ public class in ...

  4. nodejs http.get乱码问题处理方法

    var req = http.get(url,function(res){ res.setEncoding('utf-8'); var html = '' res.on('data',function ...

  5. Linux_jdk path (execute and install)

    作者:潇湘隐者 出处:http://www.cnblogs.com/kerrycode/ 1:echo $JAVA_HOME 使用$JAVA_HOME的话能定位JDK的安装路径的前提是配置了环境变量$ ...

  6. 转:BZERO()等的区别

    BZERO()等的区别 bzero  原型: extern void bzero(void *s, int n); 用法: #include <string.h> 功能:置字节字符串s的前 ...

  7. Android使用百度地图定位

    下面事例是使用Android平台的部分代码.对于这个平台百度的开放人员已经写了完整的demo,把工程导入到eclipse中之后一般没有错误,如果报错的话,eclipse也会给出提示.一般可以通过将pr ...

  8. SQL通过xml插入批量数据

    存储过程: CREATE PROCEDURE [dbo].[UP_PurchasexxxCard] @OrderInfo XMLASBEGIN SET NOCOUNT ON; DECLARE @Dat ...

  9. 8.2.1.8 IS NULL Optimization NULL 优化:

    8.2.1.8 IS NULL Optimization NULL 优化: Oracle 对待null值: SQL> create table t100(id int,name char(10) ...

  10. 几种开源SIP协议栈对比OPAL,VOCAL,sipX,ReSIProcate,oSIP

    随着VoIP和NGN技术的发展,H.323时代即将过渡到SIP时代,在H.323的开源协议栈中,Openh323占统治地位,它把一个复杂而又先进 的H.323协议栈展现在普通程序员的眼前,为H.323 ...