在刚刚结束的angular交易系统项目中有几个需求是让我感觉要花点时间的

  • 如何更优雅的使用angular-bootstrap 的 Modal框。

  • 通过键盘实现ctrl多选,shfit批量选的功能。

  • 如何在angular去实现瀑布流

后面两个我都选择了自己写指令去完成,键盘多选的指令目前在github上并没有发现过,而瀑布流的组件写的倒是挺多的,但是都不适合我,因为在项目中我们的布局比较复杂,github上的项目在我的布局上面使用并没有效果。所以自己写了后面两个指令。今天要讲的是我的第一个指令 ngKeybordSelect

ngKeyBordSelect

Demo

Usage

<ANY grid-group grid-select-name>
<ANY grid-selected grid-selected-item grid-selected-disabled>
.....
</ANY>
</ANY>

gridGroup Parameters

  • grid-select-name: 这个属性是用来绑定选择的字段,如果该字段为true则代表代表当前记录已经被选择

gridSelected Parameters

  • grid-selected-item 该属性用来绑定当前记录的数据,该数据将会被指令读取

  • grid-selected-disabled 如果改属性为true,则记录不允许被选中

Event

  • selectStart 当你在选择某条记录之前,组件会向上传播该事件

  • selectEnd 当你选择某条记录之后,组件会向上传播该事件

        $rootScope.$on('selectEnd', function(event, data) {
    //data为你选择的数据
    selectItems = data;
    })

Services

  • MulitGrid 提供了两个方法去获取选择的信息 getSelectItems 和 getItemsLength

 
    angular,module('xxx')
.controller('xxxxxCtrl',['MulitGrid',function(MulitGrid){
//获取选中的所有数据
var SelectItems = MulitGrid.getSelectItems(); //获取选中数据的数量
var SelectItemLength = MulitGrid.getItemsLength();
}])

就介绍到这里了,如果你觉得需要改进的地方欢迎@我,另外关于瀑布流和实现更优雅的Modal的框的文章我抽出时间写出来的

angula组件-通过键盘实现多选(原创)的更多相关文章

  1. android弹力效果菜单、组件化项目、电影票选座控件的源码

    Android精选源码 android启动扫一扫和收付款的小部件源码 android弹力效果的抽屉菜单源码 对RecyclerView Item做动画 源码 android类似QQ空间,微信朋友圈,微 ...

  2. Antd组件Table树型多选全选问题

    组件库antd里面的树型选择不能做到勾选父组件然后一起勾选子组件情况,我也不知道是组件库的问题还是原本设计就是这样 刚好组件库存在rowselection的配置项,既然存在拓展方法,又遇到需求,那么就 ...

  3. Android笔记(十五) Android中的基本组件——单选框和复选框

    单选框和多选框通常用来在设置用户个人资料时候,选择性别.爱好等,不需要用户直接输入,直接在备选选项中选择,简单方便. 直接看代码: <?xml version="1.0" e ...

  4. Flutter——Checkbox组件、CheckboxListTile(多选框组件)

    Checkbox组件 Checkbox组件常用的属性: 属性 描述 value true 或者 false onChanged 改变的时候触发的事件  activeColor 选中的颜色.背景颜色 c ...

  5. easyui datagrid 键盘上下控制选中行

    扩展datagrid的一个方法keyCtr $.extend($.fn.datagrid.methods, { keyCtr : function (jq) {  return jq.each(fun ...

  6. 扩展自easyui的combo组件的下拉多选控件

    首先上效果图 代码片段: 有需要的朋友微信联系我. 如果这篇文章对您有帮助,您可以打赏我 技术交流QQ群:15129679    

  7. 【原创】开源.NET排列组合组件KwCombinatorics使用(二)——排列生成

           本博客所有文章分类的总目录:本博客博文总目录-实时更新 本博客其他.NET开源项目文章目录:[目录]本博客其他.NET开源项目文章目录 KwCombinatorics组件文章目录: 1. ...

  8. 【原创】开源.NET排列组合组件KwCombinatorics使用(一)—组合生成

           本博客所有文章分类的总目录:本博客博文总目录-实时更新 本博客其他.NET开源项目文章目录:[目录]本博客其他.NET开源项目文章目录 KwCombinatorics组件文章目录: 1. ...

  9. 【原创】开源.NET排列组合组件KwCombinatorics使用(三)——笛卡尔积组合

           本博客所有文章分类的总目录:本博客博文总目录-实时更新 本博客其他.NET开源项目文章目录:[目录]本博客其他.NET开源项目文章目录 KwCombinatorics组件文章目录: 1. ...

随机推荐

  1. Chapter 2 Open Book——16

    By Friday I was perfectly comfortable entering my Biology class, nolonger worried that Edward would ...

  2. 类型“GridView”的控件必须放在具有 runat=server 的窗体标记内?

    Response.AddHeader("content-disposition", "attachment;filename=CRM.xls") Respons ...

  3. LeetCode OJ 217.Contains Duplicate

    Given an array of integers, find if the array contains any duplicates. Your function should return t ...

  4. Django:之BBS项目

    首先新建一个BBSProject项目,在建一个app,把app导入到项目中. 在项目BBSProject中的settings.py中, INSTALLED_APPS = [ 'django.contr ...

  5. 找最大重复次数的数和重复次数(C++ Pair)

    Problem A: 第一集 你好,世界冠军 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 265  Solved: 50[Submit][Statu ...

  6. servlet第2讲(上集)

  7. flash cs6 更新到Flash player15.0 及Air 更新方法

    1.自行下载Air 15.0 sdk (Flash player 包含在内) 2.  到15.0Air 包 里找player :AIR15.0\frameworks\libs\player 里面有pl ...

  8. subversion SVN global ignore pattern

    *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store */bin */ ...

  9. Service的启动方式

    Service的启动方式: 两种启动模式,一种是非绑定启动模式,另一种是绑定启动模式. 一.startservice方式启动 Intent intent = new Intent(this, Firs ...

  10. JavaConcurrentHashMap

    JavaConcurrentHashMap 大滕翼不自觉地往前探了探身子可还没等他听到唐寅说到 兆咒耶Т √靼脶摹 す宿坩曹 '字'心'上都有横您老瞧瞧这个'宣德 炔灌莞 蹇忄в 幼銮亿辽 仄黛境 ...