jQuery EasyUI 为Combo,Combobox添加清除值功能实例

  效果图:



  图标



  (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 = $('');

  //清除按钮添加悬停效果。

  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代码

  成都   传智播客   姚欣   小星星

  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;

  }

(0)

相关推荐

  • 如何在easyUI中的datagrid添加工具栏

    easyUI是最常用的WEB前端开发框架之一,对于软件工程专业的学生来说easyUI框架也是最容易学习的,如果连学习easyUI框架你都感觉到费劲的话,那么说明你的学习方法有问题.而datagrid又 ...

  • 怎么在Excel表格中添加非法值和更改限定输入内容

    Excel是一款电子表格软件,它拥有直观的外形.优异的计算功能.然而,仍然有不少用户对于一些操作不太熟悉,他们问道:怎样才能在Excel表格中添加非法值和更改限定输入内容呢?小编今天给大家分享解决这个 ...

  • 电脑Premiere软件怎么给视频添加/清除转场效果

    Premiere是我们现在经常使用的视频编辑软件,那今天小编跟大家分享的是电脑Premiere软件怎么给视频添加/清除转场效果.添加转场1. 首先我们需要在电脑中打开premiere软件,进入主界面之 ...

  • 如何用Pr给视频添加中间值效果

    Pr是一款功能强大的视频编辑软件,有些用户想知道如何用Pr给视频添加中间值效果,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步打开电脑中的Pr软件,根据下图箭头所指,依次点击[文 ...

  • C#窗体设计:[19]ComboBox添加选项

    实现ComboBox添加选项. 操作方法 01 新建一个C#应用程序,应用程序命名为InsertComboBox. 02 窗体界面设计如下: 03 对"添加"按钮添加响应函数,响应 ...

  • Ae中如何添加中间值并调整参数

    在Ae中我们如何添加中间值并调整参数? 操作方法 01 打开Ae,点击新建项目,点击新建合成,设置相应的参数,点击确定. 02 选中项目选项框,按"Ctrl+i"导入素材,将素材拖 ...

  • 如何在电脑IE浏览器中添加自动翻译的功能

    如何在电脑IE浏览器中添加自动翻译的功能 1.IE浏览器中可以添加Bing翻译插件,实现一键翻译,从网上下载"Bing 在线翻译"插件; 2.勾选"将其设为此类加速器的默 ...

  • 微信公众号自定义菜单怎么添加留言板功能插件?

    在自定义菜单里添加留言板功能,可以方便的搜集用户反馈信息,只要进到公众号里就能看到,直观简洁.商家在后台可以对留言进行回复,也可以设置消息加密,下面把留言板制作步骤和添加到自定义菜单的方法教给大家. ...

  • 微信公众号页面模版怎么添加文章推荐功能?

    微信公众号中发布的文章可以添加推荐的文章,该怎么添加文章推荐功能呢?下面我们就来看看详细的教程. 1.登录微信公众平台,选择“功能”——“页面模板”——“添加模板” 2.选择合适的页面模板,添加文章后 ...