jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
程序员文章站
2022-07-04 21:34:45
效果图:
图标
(function($){
//初始化清除按钮
function initclear(target){
var...
效果图:
图标
(function($){ //初始化清除按钮 function initclear(target){ var jq = $(target); var opts = jq.data('combo').options; var combo = jq.data('combo').combo; var arrow = combo.find('span.combo-arrow'); var clear = arrow.siblings("span.combo-clear"); if(clear.size()==0){ //创建清除按钮。 clear = $('<span class="combo-clear" style="height: 20px;"></span>'); //清除按钮添加悬停效果。 clear.unbind("mouseenter.combo mouseleave.combo").bind("mouseenter.combo mouseleave.combo", function(event){ var isenter = event.type=="mouseenter"; clear[isenter ? 'addclass' : 'removeclass']("combo-clear-hover"); } ); //清除按钮添加点击事件,清除当前选中值及隐藏选择面板。 clear.unbind("click.combo").bind("click.combo",function(){ jq.combo("setvalue","").combo("settext",""); jq.combo('hidepanel'); }); arrow.before(clear); }; var input = combo.find("input.combo-text"); input.outerwidth(input.outerwidth()-clear.outerwidth()); opts.initclear = true;//已进行清除按钮初始化。 } //扩展easyui combo添加清除当前值。 var oldresize = $.fn.combo.methods.resize; $.extend($.fn.combo.methods,{ initclear:function(jq){ return jq.each(function(){ initclear(this); }); }, resize:function(jq){ //调用默认combo resize方法。 var returnvalue = oldresize.apply(this,arguments); var opts = jq.data("combo").options; if(opts.initclear){ jq.combo("initclear",jq); } return returnvalue; } }); }(jquery));
html代码
<select id="myselect" panelheight="auto" style="width: 102px;" editable="true" name="itcast"> <option value="0">成都</option> <option value="1">传智播客</option> <option value="2">姚欣</option> <option value="3">小星星</option> </select>
js代码
$('#myselect').combobox({ required : true, editable : false }).combobox("initclear");
css样式
.combo-clear { background-color: #e0ecff; width: 18px; height: 20px; overflow: hidden; display: inline-block; vertical-align: top; cursor: pointer; opacity: 0.6; filter: alpha(opacity=60); background: url('images/combo_clear.png') no-repeat center center; } .combo-clear-hover { opacity: 1.0; filter: alpha(opacity=100); background-color: #eaf2ff; }
以上这篇jquery easyui 为combo,combobox添加清除值功能的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。